পৃষ্ঠার পাতায় "পৃষ্ঠা" স্লাগ পরিবর্তন করুন


13

সহজ প্রশ্ন. পৃষ্ঠাগুলি সক্রিয় করা হলে, URL এ পরিবর্তন হয় "site.com/page/2"। আমার সাইটের জন্য, এটি হওয়া উচিত "site.com/paggetto/2"

আমি কীভাবে সেই পুনর্লিখনের নিয়মটি পরিবর্তন করতে পারি? আমি "author"এবং অন্যান্য ভেরিয়েবলগুলিও পরিবর্তন করতে চাই ।

উত্তর:


17

জার্মান ভাষায় কিছু সাইটের জন্য আমি অনুবাদ pageকরতে নিম্নলিখিত প্লাগইনটি ব্যবহার করি seite(এর জন্য জার্মান শব্দ page):

<?php # -*- coding: utf-8 -*-
/**
 * Plugin Name: T5 Page to Seite
 * Description: Ersetzt <code>/page/</code> durch <code>/seite/</code>.
 * Author:      Fuxia Scholz
 * License:     MIT
 * License URI: http://www.opensource.org/licenses/mit-license.php
 */

if ( ! function_exists( 't5_page_to_seite' ) )
{
    register_activation_hook(   __FILE__ , 't5_flush_rewrite_on_init' );
    register_deactivation_hook( __FILE__ , 't5_flush_rewrite_on_init' );
    add_action( 'init', 't5_page_to_seite' );

    function t5_page_to_seite()
    {
        $GLOBALS['wp_rewrite']->pagination_base = 'seite';
    }

    function t5_flush_rewrite_on_init()
    {
        add_action( 'init', 'flush_rewrite_rules', 11 );
    }
}

মনে রাখবেন যে আপনি কেবল ডি / অ্যাক্টিভেশনে পুনর্লিখনের নিয়মগুলি ফ্লাশ করেছেন । .htaccessপুরানো ইউআরএলগুলি নতুনের দিকে পুনঃনির্দেশ করতে আপনার একটি পৃথক পুনর্লিখনের নিয়ম প্রয়োজন :

RedirectMatch Permanent ^/(.*)/page/(.*) /$1/seite/$2

1
LO গ্লোবালস ['ডাব্লুপিপিউইউরাইট'] -> পৃষ্ঠাস্বাদন_বেস = 'সাইট' এবং $ ডব্লিউপি_উইরাইট-> অনুসন্ধান_বেস = 'বাসকার' এর মধ্যে পার্থক্য কী; ?
DarkGhostHunter

1
সেখানে সূক্ষ্ম এবং unintuitive হয় পার্থক্য মধ্যে global $var;এবং $GLOBALS['var']। এই ক্ষেত্রে কিছু যায় আসে না, কেবল মনে রাখবেন যে পরবর্তী ফর্মটি নির্ভরযোগ্য এবং পড়া / বোঝা সহজ।
ফুসিয়া

18

খুঁজে বের করা:

function re_rewrite_rules() {
    global $wp_rewrite;
    // $wp_rewrite->author_base = $author_slug;
//  print_r($wp_rewrite);
    $wp_rewrite->author_base        = 'autor';
    $wp_rewrite->search_base        = 'buscar';
    $wp_rewrite->comments_base      = 'comentarios';
    $wp_rewrite->pagination_base    = 'pagina';
    $wp_rewrite->flush_rules();
}
add_action('init', 're_rewrite_rules');

অন্তত, যে কাজ করবে।


11
$wp_rewrite->flush_rules();পারফরম্যান্সের দিক থেকে অত্যন্ত ব্যয়বহুল মাত্র একটি ছোট্ট বিজ্ঞপ্তি, আপনার কখনই এটি ব্যবহার করা উচিত নয় init, আরও ভাল বিকল্পটি হ'ল পারমিলিংক বিকল্প পৃষ্ঠাতে গিয়ে দেখা এবং কয়েকবার পরিবর্তনগুলি সংরক্ষণ করা, এটি আপনার জন্য প্রবাহিত করবে them ।
আন্দ্রে এ

1

এই ফাংশনটি সরাসরি আপনার অনুবাদ প্যাকেজটির সাথে কাজ করবে, আপনার নতুন বেসটি ফর্ম্যাট করবে এবং আপনার ব্লগের খারাপ কার্য সম্পাদন এড়াতে ফ্লাশ_প্রিট_রলস ফাংশনটি একাধিকবার চালানো রোধ করবে।

function my_change_rewrite_base() {
    global $wp_rewrite;
    $bases = array(
        'author' => __('Author'), 
        'search' => __('Search'), 
        'comments' => __('Comments)', 
        'pagination' => __('Page')
    );

    foreach ($bases AS $key => $base) {
        $wp_rewrite->{$key} = remove_accents(mb_strtolower($base));
    }

    if ( ! get_option('my_change_rewrite_base_flushed', false) ) {
        flush_rewrite_rules();
        update_option( 'my_change_rewrite_base_flushed', time());
    }
}
add_action('init', 'my_change_rewrite_base');

0

নিম্নলিখিত আমার জন্য কাজ করেছে:

function nw_strana() {
    $GLOBALS['wp_rewrite']->pagination_base = 'strana';
}

add_action( 'init', 'nw_strana' );

function nw_rewrite( $rules ) {
    $new_rules = array(
        'obchod/strana/([0-9]{1,})/?$' => 'index.php?post_type=product&paged=$matches[1]',
    );

    $rules = array_merge( $new_rules, $rules );

    return $rules;
}

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