শিরোনাম পোস্ট সীমাবদ্ধ কিভাবে?


27

শিরোনাম পোস্ট সীমাবদ্ধ করার কোন উপায় আছে? আমি জানি যে আমি ক্যুয়ারী.এফপি কোর ফাইলটি সংশোধন করতে পারি তবে হুক দিয়ে এটি করার কোনও উপায় থাকতে হবে?

আগাম ধন্যবাদ!

উত্তর:


32

এখানে এমন একটি ফিল্টার রয়েছে যা চালাকি করবে। এটি আপনার থিমের functions.phpবা একটি প্লাগইনে ফেলে দিন।

/**
 * Search SQL filter for matching against post title only.
 *
 * @link    http://wordpress.stackexchange.com/a/11826/1685
 *
 * @param   string      $search
 * @param   WP_Query    $wp_query
 */
function wpse_11826_search_by_title( $search, $wp_query ) {
    if ( ! empty( $search ) && ! empty( $wp_query->query_vars['search_terms'] ) ) {
        global $wpdb;

        $q = $wp_query->query_vars;
        $n = ! empty( $q['exact'] ) ? '' : '%';

        $search = array();

        foreach ( ( array ) $q['search_terms'] as $term )
            $search[] = $wpdb->prepare( "$wpdb->posts.post_title LIKE %s", $n . $wpdb->esc_like( $term ) . $n );

        if ( ! is_user_logged_in() )
            $search[] = "$wpdb->posts.post_password = ''";

        $search = ' AND ' . implode( ' AND ', $search );
    }

    return $search;
}

add_filter( 'posts_search', 'wpse_11826_search_by_title', 10, 2 );

মুছে ফেলা WP_Queryবাদ দিয়ে বেশিরভাগ কোড কেবল ক্লাস থেকে অনুলিপি করা হয় post_content LIKE

আপডেট:like_escape() ৪.০ থেকে অবহেলিত সরানো হয়েছে


দুর্দান্ত কাজ পুরোপুরি, আমি জানতাম যে এর জন্য একটি ফিল্টার রয়েছে, এটি কোডেক্সে কোথাও খুঁজে পেল না, অনেক ধন্যবাদ!
জাভিয়র ভিলানুয়েভা

@TheDeadMedic আমি আমার ব্লগে এটি চেষ্টা করেছি এবং সেই নির্দিষ্ট ক্যোয়ারী এখন এই কোডটি সহ বা ছাড়াই কোনও ফল দেয় না। কোন ধারনা?
আশফাম

এখন কোড ব্যতীত এটি যথারীতি কাজ করছে তবে কোডটি আমার পক্ষে কার্যকর হয়নি। এটি একই ফলাফলগুলি দেখিয়েছিল: /
আশফাম

@ আশফমে আমি আমার উত্তরটি সংশোধন করেছি।
TheDeadMedic

1
পিএইচপি বার্তা: পিএইচপি মারাত্মক ত্রুটি: অপরিজ্ঞাত পদ্ধতিতে কল করুন ডাব্লুপিডিবি :: এসএস লাইক () --- আপনার যদি কোনও পুরানো ওয়ার্ডপ্রেস থাকে তবে ডাব্লুপি 4.0 এর হিসাবে এটি একটি নতুন ফাংশন
পিজে ব্রুনেট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.