scottb
  • 0
Гуру

Как указать порядок виджетов или имя css через скрипт?

  • 0

У меня есть процедура (см. ниже), которая создает и вставляет несколько виджетов в боковые панели активной темы.

Однако мне нужно больше контролировать либо порядок/индекс, которые назначаются (т. е. один из моих виджетов должен быть в верхней части любых других виджетов на боковой панели), ИЛИ мне нужно указать собственное имя css для виджет.

Я вставил комментарий, чтобы поймать виджет под названием «мой важный виджет» и применить индекс или пользовательский CSS, который мне нужно назначить этому виджету.

Возможны ли какие-либо из них?

$file_name_widget = $files_widgets->getPathname();
$widget_text = file_get_contents($file_name_widget);
$widget_text_label = 'text';
$widget_ops = get_option('widget_text', array());
$widget_id = count($widget_ops) + 1;
if($file_name_widget == 'my important widget') {
    //place code here to make this widget move to the top of any others in the sidebar its assigned to
    }
$widget_ops[$widget_id] = array('title' => $files_widgets->getBasename('.txt'),'text' => $widget_text,);
update_option('widget_text', $widget_ops);                  
$sidebar_id = basename($files_widgets->getPath());
$sidebars_widgets = get_option('sidebars_widgets', array());
$sidebars_widgets[$sidebar_id][] = $widget_text_label."-".$widget_id;
update_option('sidebars_widgets', $sideb
Share
  1. Если вы хотите изменить порядок, вы можете использовать фильтр sidebars_widgets, аргументом которого является массив всех идентификаторов виджетов и их местоположений. Вы можете изменить позиции идентификатора в этом массиве в соответствии с вашими потребностями.

    • 0
  2. Взгляните на глобальную переменную global $wp_sidebars_widgets . Индексы этого массива — это позиции, в которых будут отображаться виджеты.

    • 0
  3. Вы уже указываете идентификатор.. проверьте его в своем выводе.. вы можете использовать его с помощью css следующим образом:

    #idname { <-- this is how we target an ID
    background: #f3f3f3;
    some othere CSS...
    }
    

    Проверьте вывод / страницу, на которой он появляется на вашем сайте, для этого идентификатора виджета и используйте его. Вы также можете вставить идентификатор здесь, и я продемонстрирую использование css.

    • 0

Оставить ответ

You must login to add an answer.