Как добавить php код в виджете wordpress
Привет всем, и сегодня не большая статья но очень полезная, есть много интересных виджетов которые делают свою функцию без плагина, но они используются с помощью кода php.
Так вот, если вы вставите такой код в свой текстовый виджет, то ничего не произойдет, по скольку в WordPress не работает вставка php кода в виджеты.
Вы наверное сталкивались с такой проблемой, когда что-то ищете в интернете, например: «Виджет топ комментаторов без плагина» где используется именно php код в виджете, для того чтобы отображался данный виджет, и все вроде сделали а он не отображается. А почему ? Потому что у вас ничего не настроено.
Авторы таких статей где нужно использовать данную функцию, забывают упомянуть об этом в статье, и многие просто сделав все правильно, но у них ничего не выводится, потом очень нервничают и пишут разные комментарии, типа (зачем выкладывать такое если оно не работает?).
Да, это ошибка именно автора, по скольку он забыл об этом сказать. Хочу сказать всем, что из-за этой ошибки вы можете потерять своего читателя.
Как добавить php в виджете wordpress
Ну давайте приступим к решении данной задачи, переходим в панель управления блогом, Внешний вид/Редактор и ищем файл functions.php, и идем в самый где у вас должен быть такой знак ?> вот перед ним нужно вставить код, но если у вас нет его, то значит просто в самый конец, вот этот код:
1 2 3 4 5 6 7 8 9 10 | function php_in_widgets($widget_content) { if (strpos($widget_content, '<' . '?') !== false) { ob_start(); eval('?' . '>' . $widget_content); $widget_content = ob_get_contents(); ob_end_clean(); } return $widget_content; } add_filter('widget_text', 'php_in_widgets', 99); |
Вы себе облегчили жизнь на всегда, теперь проблем не будет, если вы что-то будете выводить с помощью php кода в виджете, то все будет замечательно.
Рекомендую вставить этот код всем у кого не вставлен, потому что если вы даже сейчас не используете что-то подобное без плагина, то не факт что вы не будете использовать в дальнейшем.
Этот код вам не помешает, так что не бойтесь.
Все на этом, до скорых встреч, пока.
С уважением Евгений Смецкий
15 комментариев
Пользуюсь плагином подобным. Чем же лучше без плагина?
Как для меня, то лучше код прописать 😀 а там как вы хотите.
Спасибо за информацию. Надо самому сразу прописать. Чтобы потом не забыть. Сейчас, чтобы побыстрее настроить блог, всё сделал плагинами. Потом же буду многое вещи заменять и делать их без плагинов. Даже не подозревал про эту важную фишку. А то стал бы материться и плеваться. Считал бы, что у меня тема не правильная и в моей теме это сделать невозножно. Как уже раньше было на других блогах.
Всегда пожалуйста !)
Спасибо! Без плагина лучше будет
На многих блогах пишут, что нужен плагин exec php по-мойму.
На мой взгляд, без плагина лучше во много раз)
Не люблю, когда много плагинов, поэтому воспользуюсь этим кодом, мерси.)
Помню, было дело, как я мучилась битый час, пыталась воткнуть код баннера в виджет, и ничего не происходило, высвечивались всякие непонятные инопланетные символы, потом плюнула на это дело, с тех пор в виджеты коды не прописываю.
п.с. Не могу открыть страничку, с правилами комментирования.( Ошибку выдает, браузер видать не дает, не понимаю
В посте про программку шаблонов, исправляюсь, не сразу увидела, что программка платная, пардон, перечитала еще раз стать.)
Пользуйтесь на здоровья )
Данный код работает. Благодарю запост. Плагин это лишний вес на блог.
Очень интересное решение, надо будет попробовать у себя. Большое Вам спасибо Евгений
Попробуйте код вроде правильный
Не вроди, а правельный !! Я сам этим пользуюсь )
Евгений, у меня даже сомнений не возникало по поводу предложенного кода
Спасибо Саня, обязательно попробую
У меня раньше без этого кода при вставке php в виджет отображались иероглифы или просто код который я вставлял в виджет а сама функция кода не выполнялась. Благодарю за информацию.