সংরক্ষণাগার টেমপ্লেটে Yoast ওয়ার্ডপ্রেস এসইও শিরোনাম প্রদর্শন করুন


14

ইওআস্টের ওয়ার্ডপ্রেস এসইও প্লাগইন ব্যবহারকারীদেরকে ট্যাক্সোনমি টার্ম সংরক্ষণাগার পৃষ্ঠাগুলিতে এসইও শিরোনাম এবং মেটা বিবরণ যুক্ত করতে দেয়। এগুলি তখন নথির শিরোনামে ব্যবহৃত হয়।

আমি আমার শ্রমশক্তি সংরক্ষণাগার টেমপ্লেটে এইচ 1 হিসাবে বিভাগীয় শর্তগুলির এসইও শিরোনামটি প্রদর্শনের চেষ্টা করছি।

কোনও পোস্টে এটি করার জন্য, পোস্টের ধরণ বা পৃষ্ঠা সহজ:

echo get_post_meta($post->ID, '_yoast_wpseo_title', true); 

সংরক্ষণাগার টেম্পলেটগুলিতে এটি কাজ করে না।

কেউ কীভাবে এটি কাজ করতে জানে?

স্ক্রিনশট উদাহরণ

এটি একটি নির্দিষ্ট ট্যাগ টার্মের শিরোনাম। আমি এই শিরোনামটি প্রদর্শন করার চেষ্টা করছি - তবে তারপরে একটি কাস্টম ট্যাক্সনোমি শর্তের জন্য - আমার সংরক্ষণাগার টেম্পলেটগুলিতে।

ট্যাগ সংরক্ষণাগার সম্পাদনা স্ক্রিন

চূড়ান্ত কোড

এটি আমার archive.phpটেম্পলেট ব্যবহার করে শেষ করেছি । আপনি যদি কাস্টম ট্যাক্সোনমি ব্যবহার করেন তবে এটি কাজ করে। ট্যাগ বা বিভাগগুলির জন্য মাইকে মডার্নের উত্তর নীচে দেখুন।

<h1 class="archive-title">
<?php
if ( is_tax() ) :                                                                   
    $taxonomy = get_queried_object()->taxonomy;
    $term_id = get_queried_object()->term_id;
    $meta   = get_option( 'wpseo_taxonomy_meta' );
    $title  = $meta[$taxonomy][$term_id]['wpseo_title'];
    //printf( '<pre>%s</pre>', print_r( get_option( 'wpseo_taxonomy_meta' ), 1 ) );
    if ( isset($meta) && !empty($title) ) :         
        echo apply_filters( 'the_title', $title );
    else :
        single_term_title();    
    endif;
endif;                              
?>
</h1>  

উত্তর:


19

সংরক্ষণাগার এসইও শিরোনাম পান

আপনি যদি কোনও কাস্টম পোস্ট প্রকারের সংরক্ষণাগার শিরোনামটি সংজ্ঞায়িত করেন তবে আপনি এটি পেতে পারেন:

$titles = get_option( 'wpseo_titles' );
$title  = $titles['title-ptarchive-POST_TYPE'];

echo apply_filters( 'the_title', $title );

POST_TYPEআপনার নিজের কাস্টম পোস্ট প্রকার দ্বারা প্রতিস্থাপন মনে রাখবেন ।

সমস্ত wpseo_titleভেরিয়েবল প্রদর্শন করতে, আপনি ব্যবহার করতে পারেন:

printf( '<pre>%s</pre>', print_r( get_option( 'wpseo_titles' ), 1 ) );

সুতরাং আপনার যা প্রয়োজন তা সহজেই চয়ন করতে পারেন।

টার্ম এসইও শিরোনাম পান

ধরন

এই কোডটি ব্যবহার করে আপনি নির্ধারিত এসইও শিরোনাম পেতে পারেন:

$cat_id = get_query_var( 'cat' );
$meta   = get_option( 'wpseo_taxonomy_meta' );

$title  = $meta['category'][$cat_id]['wpseo_title'];

echo apply_filters( 'the_title', $title );

ট্যাগ

এই কোডটি ব্যবহার করে আপনি নির্ধারিত এসইও শিরোনাম পেতে পারেন:

$tag_id = get_query_var( 'tag' );
$meta   = get_option( 'wpseo_taxonomy_meta' );

$title  = $meta['post_tag'][$tag_id]['wpseo_title'];

echo apply_filters( 'the_title', $title );

সমস্ত wpseo_taxonomy_metaভেরিয়েবল প্রদর্শন করতে, আপনি ব্যবহার করতে পারেন:

printf( '<pre>%s</pre>', print_r( get_option( 'wpseo_taxonomy_meta' ), 1 ) );

এইভাবে আপনি কাঠামো এবং উপলব্ধ ভেরিয়েবলগুলি দেখতে পাবেন।


আপনি এসইও > শিরোনাম এবং মেটাস > পোস্ট প্রকারে শিরোনাম যুক্ত করেছেন ?
মাইক মাদার্ন

আমি সমাধানটির সাথে আমার উত্তরটির উন্নতি করেছি :-)
মাইক মাদার্ন

আমি অনুমান করছি আপনি আমার শেষ পোস্ট সম্পাদনাটি মিস করেছেন: -পিআই এর সাথে একটি সংস্করণ যুক্ত করেছে $tag_id
মাইক মাদার্ন

1
কোডটির জন্য অনেক ধন্যবাদ, আমি কখনই এটি বের করতে সক্ষম হব না। আমি এটি কাস্টম ট্যাক্সনোমির সাথে কাজ করার জন্য কয়েকটি ছোট ছোট পরিবর্তন করেছি।
ম্যাটভিক

এটা অসাধারণ. আমাকে আগের get_queried_object()->term_idপরিবর্তে get_query_var()আইডিটি ফেরত দেওয়ার সাথে সাথে ব্যবহার করতে হয়েছিল , কোডটি "অপরিজ্ঞাত সূচক" বিজ্ঞপ্তি তৈরি করে স্লাগটি দেয় ter এছাড়াও, সেখানে কোনও সেট আছে কিনা তা খতিয়ে দেখুন $meta['post_tag|category'], কারণ আপনি পাশাপাশি অপরিজ্ঞাত সূচক বিজ্ঞপ্তিগুলি পেয়ে যাবেন। (ডাব্লুপি 4.2.2,
বিটিডাব্লু

5

পোস্ট লুপে সংরক্ষণাগার পৃষ্ঠায় এটিকে কার্যকর করার জন্য কোডের নীচের লাইন যুক্ত করুন

echo get_post_meta(get_the_ID(), '_yoast_wpseo_title', true); 

এটি আপনার পক্ষে কাজ করছে কিনা তা বলুন বা আমি অন্য একটি সমাধান সরবরাহ করব।


দুর্ভাগ্যক্রমে এটি কাজ করেনি। এটি সংরক্ষণাগারে প্রথম পোস্টের এসইও শিরোনাম দেখায়। এই ডেটাটি কোথায় সঞ্চয় করা হয়েছে তা দেখতে সম্ভবত ডিবিতে ডুব দিতে হবে।
ম্যাটভিভ

আপনি এটি লুপ ব্যবহার করছেন? আপনি আমাকে কোডটি দেখাতে পারেন?
বিনোদদলভি

আমি আমার কোড যুক্ত করেছি। নিশ্চিত নয় যে আমি ব্যাখ্যা করেছি যে আমি পৃষ্ঠা শিরোনাম আউটপুট করতে চেয়েছি, লুপের প্রতিটি পোস্টের শিরোনাম নয়।
ম্যাটভিক

আমি ঠিক এটিই খুঁজছিলাম। লুপে SEO শিরোনাম আউটপুট করে। এছাড়াও, আমি get_the_ID () প্রতিস্থাপন করেছি $ পোস্ট-> আইডি
Gerbz

এটি আমার জীবন বাঁচায় ভাল ..
মুকী কুমার

0

পথ ফোকাস শব্দ বিভাগ এবং ট্যাগ

প্রোগ্রামে কোনও বিভাগ বা ট্যাগের ফোকাস কীওয়ার্ডটি পেতে , আপনি এই দুটি পদ্ধতির যেকোনটি ব্যবহার করতে পারেন:

            /** Method 1. Tap into the options directly. **/
            $meta = get_option( 'wpseo_taxonomy_meta' ); // needed only once, so keep this outside/before your foreach loop.

            $posttags = get_the_tags();
            if ($posttags) {
                foreach( $posttags as $tag ) {
                    echo $meta['post_tag'][$tag->term_id]['wpseo_focuskw'];
                }
            }

এটি মাইকে তাঁর পোস্টের শেষে ব্যবহার করা হয়েছে approach

অথবা

            /** Method 2. Use Yoast's function. **/
            $posttags = get_the_tags();
            if ($posttags) {
                foreach( $posttags as $tag ) {
                    echo WPSEO_Taxonomy_Meta::get_term_meta( $tag->term_id, 'post_tag', 'focuskw' );
                }
            }

আমি দ্বিতীয় পদ্ধতির পছন্দকে পছন্দ করি কারণ এইভাবে আমাকে নিজেরাই মেটা বিকল্পটি পাওয়ার বিষয়ে যত্ন নিতে হবে না।

আপনার মধ্যে functions.php, আপনি পরীক্ষা করতে চাইতে পারেন if class_exists( 'WPSEO_Taxonomy_Meta' )এবং তারপরে ইওস্ট ফাংশনটি আপনার নিজের একটি ফান্টনগুলিতে গুটিয়ে রাখতে পারেন, আপনি যদি লাইনের নিচে Yoast SEO ব্যবহার বন্ধ করতে চান তবে নিরাপদ থাকতে পারেন।

কিছু পটভূমি

মূল প্রশ্নে উল্লিখিত হিসাবে, get_post_meta( $tag->term_id, '_yoast_wpseo_focuskw', true);বিভাগ এবং পৃষ্ঠাগুলির জন্য এমন কিছু কাজ করবে না (এটি কিছুই ফিরিয়ে দেবে না))

তাহলে কেন?

কারণ, বিভাগ এবং ট্যাগগুলির জন্য, ফোকাস কীওয়ার্ডটি ডেটাবেজে অন্য কোথাও সংরক্ষণ করা হয়। wp_postmetaযথারীতি টেবিলের অভ্যন্তরে সংরক্ষণের পরিবর্তে , এটি wp_optionsএকটি জেএসওএন অবজেক্ট হিসাবে টেবিলের গভীরে সমাহিত করা হয় ।

উপরের পদ্ধতিগুলি আমাদের এই মানগুলি অ্যাক্সেস করতে দেয়।


অবশেষে, আপনি যদি আমার মতো হন এবং কর বিভাগের নামটি মনে করতে না পারেন (উদাহরণস্বরূপ: ট্যাগগুলি কেন ট্যাক্সনমি ব্যবহার করে post_tagএবং কেবল নয় tag, আপনি কোনও বিভাগ বা ট্যাগ সম্পাদনা করার সময় কেবল URL গুলি পরীক্ষা করে দেখুন: এটি প্রদর্শিত হবে …taxonomy=category…বা মত.


0

উত্তর বিভাগ এবং ট্যাগগুলির জন্য ফোকাস কীওয়ার্ডটি পাওয়া

// এটি থ্যাঙ্কিউ
// র বাকী এপিআই সহ কাজ করে

get / wp-json / wp / v2 / श्रेणি? স্লাগ = পানslug_name

প্লাগইন.ইন মেথড 1 ব্যবহার করুন

পরিবর্তন লাইন

$meta['post_tag'][$tag->term_id]['wpseo_focuskw'];

$meta['category'][$param_post_id]['wpseo_focuskw'];

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.