Ответы в темах

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • Спасибо за советы. Но всё же я выморочился и сделал всё через meta значения термов таксономии (atributes)

    @tuxfighter это понятно, но по факту нужно под каждый атрибут регистрировать новую таксономию, а атрибутов этих много и скорее всего заказчик захочет их изменять. Поэтому нужно реализовать систему подобную как WooCommerce. У них есть вкладка атрибутов товара где с админ панели можно регистрировать ТАКСОНОМИИ и там же создавать для них terms. Как добиться такого результата? ибо сейчас экспериментирую с костылями в виде мета полей у термов и выходит цепочка Такса(Атрибуты)->Term(Атрибут)->{ его значения в мета дате } но такой подход невероятно костыльный и геморный.

    Наверно правильней будет уже сформировать вопрос — как добавлять таксономии с админ панели

    (@fierevere),(@alexander70) Спасибо господа)
    Всё же я недооценил себя)
    Вот скрипт решения проблемы. Впихнул на исполнение после тестов прямо в page.php

    Сначала получаем все медиа. После сверяем на наличие в директоии uploads, чего нету изничтожаем то атомов, эврика!)

    $args = array(
        'post_type' => 'attachment',
        'numberposts' => -1,
        'post_status' => null,
        'post_parent' => null, // any parent
        ); 
    $attachments = get_posts($args);
    if ($attachments) {
    	$problems = array();
    	foreach($attachments as $attachment):
    		
    // Путь к картинке
    $file = "wp-content/uploads/".get_post_meta( $attachment->ID, '_wp_attached_file', true );
    
          // Проверяем наличие в файлах (Если нет, удаляем медиа)
    		if(!file_exists(''.$file.'') && $attachment->ID != 5){
    			wp_delete_attachment( $attachment->ID );
    			echo "Deleted";
    			$problems[] =
    			[
    				'id' => $attachment->ID,
    				'name' => $attachment->post_title,
    			];
    		}
    	endforeach;
    
            //(var_dump) Проводим отладку, инспектируем удалённые записи
    	get_vd($problems);
    }
    

    @alexander70 я бы так и сделал если бы у меня не было 65 страничек по 1000 картинок при том что битые рандомно разбросаны по галерее. Было бы хорошо если к таким картинкам приписывался класс от lazy-load — «error» как в каталоге товаров(там где не выходит загрузить дописывается класс). Тогда можно было бы хотя бы через консоль или поиск в просмотре кода обнаружить их чтобы каждую страницу не перелистывать. А так нужно комплексное решение. Я полагаю что можно сделать скрипт получающий с базы данных список медиафайлов после чего сопоставляет ссылки с тем существует ли файл а после в случае надобности проводил удаление но моих навыков тут не хватит

    Да. Есть основное меню навигации просто с пунктами. В этих пунктах вложенности. Так от мне нужно чтобы даже если во вложенность вложить вложенность, выводилось это в html на один уровень. Иначе адекватно спозиционировать это дело не выйдет, а отображаться это должно в мобильной версии.

    <li>
       <ul class='sub'>
       </ul>
    
       <ul class='sub'>
       </ul>
    </li> 

    ВМЕСТО

    <li>
       <ul class='sub'>
          <ul class='sub'>
          </ul>
       </ul>
    </li> 

    В nav walker не смог ничего придумать, подскажите пожалуйста)

    • Ответ изменён 3 года, 7 месяцев назад пользователем Alexander.
Просмотр 6 ответов — с 1 по 6 (всего 6)