• Как максимально упростить работу с MySQL?

    zorca
    @zorca
    Конечно существуют. Я думаю Вам идеально зайдет RedBean ORM:
    <?php
        require 'rb.php';
        R::setup();
    
        //for version 5.3 and higher
        //optional but recommended
        R::useFeatureSet( 'novice/latest' );
    
        $post = R::dispense( 'post' );
        $post->text = 'Hello World';
    
        //create or update
        $id = R::store( $post );
    
        //retrieve
        $post = R::load( 'post', $id );
        
        //delete
        R::trash( $post );
    Ответ написан
    8 комментариев
  • Вывод постов на главной, если поставить галочку?

    @Lord_Dantes
    Создаете поле, выводите его для постов.
    В цикле размещаете условие если галочка есть, выводим. Всё.
    <?php $loop = new WP_Query( array('post_type' => 'post','posts_per_page' => -1,'order' => 'ASC',));
    			  while ( $loop->have_posts() ): $loop->the_post(); ?>
                <?php if (get_field('name_field') == 'yes'): ?>
    // echo
                <?php endif ?>
            <?php endwhile; wp_reset_postdata(); ?>
    Ответ написан
    1 комментарий
  • Пару вопросов по yoast SEO?

    Laacker
    @Laacker
    Product design / Marketing
    Может не совсем корректно, но советую посмотреть в сторону RankMath
    Последнее время очень активно набирает популярность среди профессиональных SEO-инструментов для WP
    Ответ написан
    Комментировать
  • Тег Title дублируется на сайте вордпресс?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    В шаблоне header.php уберите свой title / уберите генерацию title в плагине.
    Ответ написан
    Комментировать
  • Какой плагин кеширования в Вордпрессе лучше других?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Ох, опять эта тема :)

    Для начала могу сказать какой точно никогда, ни при каких обстоятельствах не использовать - W3 Total Cache. Это адище с большой буквы. Туда же все остальные плагины, которые пытаются быть "все-в-одном" и предоставлять 120 страниц конфигурации. В топку.

    Далее, давайте мухи отдельно и котлеты отдельно. Есть object cache - у него свои задачи. Есть fragment cache - у него свои. Есть full page cache - это отдельная кухня. Есть кеширование на уровне сервера (nginx fastcgi_cache), все тот же full page cache но "навыворот". А еще Nginx умеет разговаривать с Memcached напрямую. И даже если сравнивать решения, которые делают одно и то же (например, тот же full page cache), разница в "эффекте" на разных серверах и даже на разных сайтах на одном сервере будет. Часто - существенная. Плюс, есть кеширование на многих уровнях на самом сервере - файловая система, кеши БД и тд. И все эти настройки будут влиять на поведение плагинов кеширования. Часто - существенно. Кеширование на стороне клиента - отдельная кухня, начиная с server push, prefetch и тд, выдача поддерживаемых форматов (brotli/gzip, woff/woff2/ttf, webp/jpg/png и тому подобное).

    В общем, performance - это целый комплекс мер, решений и инструментов. Подходить к этому надо с умом и четким планом, полным пониманием всего процесса от инициации запроса клиентом и до... а нету точки Б, потому что там свои моменты.

    А еще надо понимать, что ваш медленный DNS может убить всю экономию на PHP runtime. Или криво установленный SSL-сертификат. Или кеширование SSL-сессий, некорректно настроенное под специфику трафика конкретного проекта. Или канал на выходе перегруженный. Или далеко не оптимальный конфиг пула PHP. Или вообще Apache. Или I/O wait зашкаливает.

    Грубо говоря, если вы надеетесь найти один волшебный плагин, который будете лепить сверху на каждый сайт и всегда получать супер-мега-быстрый сайт - вы не на то тратите свою энергию. А проводить сравнительные тесты нет смысла, потому что по сути их результаты могут иметь хоть какой-то смысл только когда вы подбираете под один конкретный сайт. Если вы проведете все те же тесты на другом сайте и на другом сервере - получите уже другие результаты.

    И еще. Силы надо тратить на то, чтобы динамический сайт был быстрым. То есть, без плагинов кеширования вообще. Если сайт у вас тупит, то попытка замаскировать это сверху плагином кеширования - не самое разумное решение. Временное - да, возможно. Но не решает проблему.
    Ответ написан
    Комментировать
  • Страница page-about на wordpress не отображается?

    wppanda5
    @wppanda5 Куратор тега WordPress
    WordPress Mедведь
    Потому шаблон page-about.php будет работать для страницы со слагом about, а не со слагом page-about
    Ответ написан
  • Полупрозрачность в php gd?

    zoommy
    @zoommy Автор вопроса
    Ответ найден! Спасибо за наводку. Вот фунция:
    function imagecopymerge_alpha($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h, $pct){ 
    	    // $pct - уровень прозрачности при наложении 0 .. 100
    	    if(!isset($pct)){ 
    	        return false; 
    	    }
    	    $pct /= 100;
    	    $w = imagesx( $src_im ); 
    	    $h = imagesy( $src_im ); 
    	    imagealphablending( $src_im, false );
    	    $minalpha = 127; 
    	    for( $x = 0; $x < $w; $x++ ) 
    	    for( $y = 0; $y < $h; $y++ ){ 
    	        $alpha = ( imagecolorat( $src_im, $x, $y ) >> 24 ) & 0xFF; 
    	        if( $alpha < $minalpha ){ 
    	            $minalpha = $alpha; 
    	        } 
    	    } 
    	    for( $x = 0; $x < $w; $x++ ){ 
    	        for( $y = 0; $y < $h; $y++ ){ 
    	            $colorxy = imagecolorat( $src_im, $x, $y ); 
    	            $alpha = ( $colorxy >> 24 ) & 0xFF; 
    	            if( $minalpha !== 127 ){ 
    	                $alpha = 127 + 127 * $pct * ( $alpha - 127 ) / ( 127 - $minalpha ); 
    	            } else { 
    	                $alpha += 127 * $pct; 
    	            } 
    	            $alphacolorxy = imagecolorallocatealpha( $src_im,
    	    	    	    	    	    	    	( $colorxy >> 16 ) & 0xFF,
    	    	    	    	    	    	    	( $colorxy >> 8 ) & 0xFF,
    	    	    	    	    	    	    	  $colorxy & 0xFF, $alpha
    	    	    	    	    	      ); 
    	            if( !imagesetpixel( $src_im, $x, $y, $alphacolorxy ) ){ 
    	                return false; 
    	            } 
    	        } 
    	    } 
    	    imagecopy($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h); 
    	}
    
    Ответ написан
    Комментировать