Как лучше писать?

vasilukwolf
На сайте с 19.05.2013
Offline
22
555

Немнго зарутался в коде.При отладке плагина на woprdpress возникает следующее предупреждение

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'config_page' not found or invalid function name in C:\xampp\htdocs\devwordpress\wp-includes\plugin.php on line 429

Код плагина

add_action( 'wp_head', 'ch2pho_page_header_output' );

function ch2pho_page_header_output() { ?>
<script type="text/javascript">
var gaJsHost = ( ( "https:" == document.location.protocol ) ?
"https://ssl." : "http://www." );
document.write( unescape( "%3Cscript src='" + gaJsHost +
"google-analytics.com/ga.js' \n\
type='text/javascript'%3E%3C/script%3E" ) );
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker( "UA-xxxxxx-x" );
pageTracker._trackPageview();
} catch( err ) {}
</script>
<?php }

register_activation_hook( __FILE__,
'ch3io_set_default_options' );
function ch3io_set_default_options() {
if ( get_option( 'ch3io_ga_account_name' ) === false ) {
add_option( 'ch3io_ga_account_name', "UA-000000-0" );
}
}
register_activation_hook( __FILE__,
'ch2pho_set_default_options_array' );
function ch2pho_set_default_options_array() {
if ( get_option( 'ch2pho_options' ) === false ) {
$new_options['ga_account_name'] = "UA-000000-0";
$new_options['track_outgoing_links'] = false;
$new_options['version'] = "1.1";
add_option( 'ch2pho_options', $new_options );
} else {
$existing_options = get_option( 'ch2pho_options' );
if ( $existing_options['version'] < 1.1 ) {
$existing_options['track_outgoing_links'] = false;
$existing_options['version'] = "1.1";
update_option( 'ch2pho_options', $existing_options );
}
}
}
add_action( 'admin_menu', 'ch2pho_settings_menu' );
function ch2pho_settings_menu() {
add_options_page( 'My Google Analytics Configuration',
'My Google Analytics', 'manage_options',
'ch2pho-my-google-analytics', 'ch2pho_config_page' );
}
function ch2pho_config_page() {
// Retrieve plugin configuration options from database
$options = get_option( 'ch2pho_options' );
?>
<div id="ch2pho-general" class="wrap">
<h2>My Google Analytics</h2>
<form method="post" action="admin-post.php">
<input type="hidden" name="action"
value="save_ch2pho_options" />
<!-- Adding security through hidden referrer field -->
<?php wp_nonce_field( 'ch2pho' ); ?>
Account Name: <input type="text" name="ga_account_name"
value="<?php echo esc_html( $options['ga_account_name'] );
?>"/><br />
Track Outgoing Links: <input type="checkbox"
name="track_outgoing_links" <?php if (
$options['track_outgoing_links'] ) echo ' checked="checked" ';
?>/><br />
<input type="submit" value="Submit"
class="button-primary"/>
</form>
</div>
<?php }

Порылся в справке, говорят что лучше реализовать все через echo.

Не работает, как раз скриптовная html часть.Отладчик включен.Как избавится и как писать html или echo+return.

Git https://github.com/vasilukwolf (https://github.com/vasilukwolf) ||E-mail vasilukwolf@gmail.com WWW http://wob.su/ (http://wob.su/) || Tel. +7 916 0156328
Станислав
На сайте с 27.12.2009
Offline
258
#1

нет даже желание приводить этот говно код в читабельный вид!

Мы там, где рады нас видеть.
дани мапов
На сайте с 06.09.2012
Offline
204
#2

По моему, когда вручную вставляешь с тегом \[code\] ТУТ КОД \[/code\] (слеши надо убрать), то форум не меняет квадратные скобки. А если через кнопку редактора, то идет замена на эти ***91;***93;

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
sashasib
На сайте с 12.02.2014
Offline
3
#3
Ms-Dred:
нет даже желание приводить этот говно код в читабельный вид!

+100500.

Терпеть не могу подобные творчества.

domen4you
На сайте с 08.03.2013
Offline
53
#4
sashasib:
+100500.
Терпеть не могу подобные творчества.

так это серч квадратные скобки не переваривает, очень неудобно...

siv1987
На сайте с 02.04.2009
Offline
427
#5
vasilukwolf:
function 'config_page' not found or invalid function name

Либо вы ошиблись с именем функции, либо такая функция у вас отсутствует.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий