2013-11-29 6 views
1

Я создал пользовательскую тему Wordpress, и я также создал пользовательскую боковую панель виджетов (так что виджеты включены), я могу увидеть название виджета, но контент не отображается. Например, я использую виджет опроса, название точно так же, как я его установил, но содержимое полностью пустое.Виджеты Wordpress не отображаются в пользовательской теме

В заголовке загружаются скрипты для плагина, но снова нет содержимого. Я попробовал несколько плагинов, и все они делают то же самое. Я также попытался использовать это с помощью do_shortcode() и снова, без содержимого. Поэтому я в тупике.

Я также попытался получить поддержку на форуме wordpress, но я никогда не получал ответа на свой запрос там.

Моя надежда заключается в том, что у кого-то была такая же проблема, и я могу указать, в чем проблема.

В заголовке, я включал следующую информацию:

<html <?php language_attributes(); ?>> 
<meta charset="<?php bloginfo('charset'); ?>" /> 
<?php wp_head();?> 
<?php wp_meta();?> 
<?php wp_print_scripts();?> 

Однако опять же, никаких результатов. Поиски Google также не остановили что-либо в этом вопросе. Вот странная вещь, я разрабатываю все темы Wordpress одинаково, большинство из которых размещены на одном сервере, и это единственная тема, имеющая эту проблему.

Также я включил скрипт functions.php для справки.

<?php 
function twentyten_widgets_init() { 

    register_sidebar(array(
     'name' => __('Primary Widget Area', 'twentyten'), 
     'id' => 'primary-widget-area', 
     'description' => __('Add widgets here to appear in your sidebar.', 'twentyten'), 
     'before_widget' => '<div id="spacer">', 
     'after_widget' => '</div></div>', 
     'before_title' => '<div id="left_top">', 
     'after_title' => '</div><div id="left_bottom">', 
    )); 
} 

add_action('widgets_init', 'twentyten_widgets_init'); 

add_filter('show_admin_bar', '__return_false'); 

remove_action('personal_options', '_admin_bar_preferences'); 
?> 

EDIT ** я удалил из заголовка, как это вызывает повторяющиеся сценарии в заголовке. Так что это уже не проблема, однако это не решило проблему, и ничто не изменилось в результате ее удаления.

+0

'wp_print_scripts()' вызывается 'wp_head'; вам не нужно явно его вызывать. Я не знаю, вызвало ли это вас проблемы или нет, но попробуйте удалить его. См. Http://wpseek.com/wp_print_scripts/ для немного деталей (но не так много, к сожалению). –

ответ

0

От вашего кода весь ваш виджет будет выглядеть следующим образом:

<div id="spacer"> 
<div id="left_top">Title</div> 
<div id="left_bottom"> 
CONTENT 
</div></div> 

Вы используете идентификаторы здесь (может быть, вы собираетесь использовать классы) здесь для элементов, как id="left_top". Поэтому добавление нескольких виджета вызовет у вас проблемы, см. Can multiple different HTML elements have the same ID if they're different elements?, поэтому идентификатор должен быть уникальным.

Возможно, вы примените css/javascript на одном из этих идентификаторов, как #left_bottom{display:none}. Это объяснит, почему ваш контент не будет показан независимо от виджета, который вы используете.

Смежные вопросы