Redirecționare URL-ul paginii către URL-ul principal fără a folosi un plugin
Cum pot redirecționa acest URL al paginii, http://localhost/wordpress_rnd/?page_id=2
, către URL-ul principal, http://localhost/wordpress_rnd/
, fără a folosi vreun plugin?

Modul corect de a face acest lucru este prin utilizarea hook-ului template_redirect
prin adăugarea unei funcții în fișierul functions.php
:
function redirect_to_home() {
if(!is_admin() && is_page('2')) {
wp_redirect(home_url());
exit();
}
}
add_action('template_redirect', 'redirect_to_home');

mi-ai putea spune de ce trebuie să folosim exit după wp_redirect(home_url()); ?

Bună întrebare și nu pot spune cu siguranță, dar știu că exemplul din documentația oficială folosește exit, așa că și eu îl folosesc.

Localizați fișierul page.php (presupunând că l-ați creat deja). După această linie <?php get_header(); ?>
adăugați următorul cod:
<?php if(is_page('2')) {
wp_redirect( home_url(), '302' );
} ?>
În codul de mai sus, is_page('2')
reprezintă de fapt ID-ul paginii dumneavoastră, așa cum ați specificat în exemplu.

Aceasta poate face treaba, dar cred că este mai bine, în funcție de situația exactă, să faci redirecționarea la nivel de server, de exemplu folosind .htaccess, astfel încât nicio linie de cod să nu fie executată și să nu irosești resurse.

@cybmeta punct de vedere valid într-adevăr :) Mulțumesc că mi-ai atras atenția.

Încă o observație. Folosește codul tău într-un action hook, cum ar fi init
sugerat de @paul în răspunsul său, nu într-un fișier de template cum ai sugerat tu. Dacă schimbi tema, pierzi funcționalitatea, de aceea funcționalitățile și aspectul (tema și fișierul de template) ar trebui separate. Aș edita răspunsul pentru a adăuga action hook-ul.

Adevărat și asta. Sunt momente când nu te gândești la optimizarea codului, ci te concentrezi doar să rezolvi rapid sarcina de față :) Cred că acesta a fost unul din acele scenarii.
Cu toate acestea, apreciez mult feedback-ul tău și e foarte valoros - în fiecare zi învăț ceva nou aici :)

Scrierea codului într-un action hook este la fel de rapidă ca scrierea lui într-un fișier de template.

WP_REDIRECT este funcția pe care trebuie să o folosești pentru redirecționare în WordPress. Poate fi utilizată astfel:
wp_redirect( $location, $status );
exit;
// $location este parametrul obligatoriu. Este folosit pentru a specifica URL-ul țintă către care va fi redirecționată pagina.
// $status este opțional. Este folosit pentru a seta codul de stare. Valoarea implicită este 302
Poți folosi această funcție pentru a redirecționa utilizatorii de la o pagină la alta. Ar trebui plasată fie în fișierul functions.php, fie în fișierul template care este folosit pentru afișarea paginii curente. Pentru a o folosi în situația ta, pur și simplu plasează următorul cod la sfârșitul fișierului tău functions.php
$redirectFromPageID = 2; // Redirecționează de la pagina cu ID-ul 2
$redirectTo = home_url(); // Redirecționează către URL-ul de acasă
if( is_page( $redirectFromPageID ) ){
wp_redirect( $redirectTo );
exit;
}
