Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Parse error: syntax error, unexpected 'public' (T_PUBLIC), expecting end of file
Форумы портала PHP.SU » » Вопросы новичков » Parse error: syntax error, unexpected 'public' (T_PUBLIC), expecting end of file

Страниц (1): [1]
 

1. jurvrn - 11 Августа, 2019 - 16:37:32 - перейти к сообщению
При активации плагина в 40 строке возникает какая то ошибка: Parse error: syntax error, unexpected 'public' (T_PUBLIC), expecting end of file in /home/***/wp-content/plugins/my-widget-personalize-login/my-widget-personalize-login.php on line 40.
Подскажите как исправить

Код плагина с 40 строки
PHP:
скопировать код в буфер обмена
  1. public static function plugin_activated() {
  2.     // Information needed for creating the plugin's pages
  3.     $page_definitions = array(
  4.         'member-login' => array(
  5.             'title' => __( 'Sign In', 'personalize-login' ),
  6.             'content' => '[custom-login-form]'
  7.         ),
  8.         'member-account' => array(
  9.             'title' => __( 'Your Account', 'personalize-login' ),
  10.             'content' => '[account-info]'
  11.         ),
  12.     );
  13.  
  14.     foreach ( $page_definitions as $slug => $page ) {
  15.         // Check that the page doesn't exist already
  16.         $query = new WP_Query( 'pagename=' . $slug );
  17.         if ( ! $query->have_posts() ) {
  18.             // Add the page using the data from the array above
  19.             wp_insert_post(
  20.                 array(
  21.                     'post_content'   => $page['content'],
  22.                     'post_name'      => $slug,
  23.                     'post_title'     => $page['title'],
  24.                     'post_status'    => 'publish',
  25.                     'post_type'      => 'page',
  26.                     'ping_status'    => 'closed',
  27.                     'comment_status' => 'closed',
  28.                 )
  29.             );
  30.         }
  31.     }
  32. }
2. LIME - 11 Августа, 2019 - 18:05:02 - перейти к сообщению
ошибка не здесь
гдето выше фигурная скобка лишняя или типа того
пользуйся ide с подсветкой кода
phpstorm считается лучшим
3. jurvrn - 11 Августа, 2019 - 23:01:40 - перейти к сообщению
LIME, сейчас у меня там мешанина из кода, собрал плагин из разных частей кода.... вот целиком, вдруг можно опытным глазом можно увидеть ошибку.... их там много

http://ideone[dot]com/cJAGTG
4. LIME - 12 Августа, 2019 - 01:17:29 - перейти к сообщению
Ого
Весело)))
Все методы должны быть внутри определения класса
jurvrn пишет:
public static function plugin_activated() {
и все остальные перенеси в класс
То есть внутрь {} класса
Хотя судя по коду и вопросу это только начало большой и интересной эпопеи))
5. jurvrn - 12 Августа, 2019 - 20:19:43 - перейти к сообщению
LIME пишет:
Все методы должны быть внутри определения класса
вас понял и буду разбираться. Спасибо! если не получится обращусь за помощью

 

Powered by ExBB FM 1.0 RC1