Rumah  >  Soal Jawab  >  teks badan

Alih keluar jenis siaran tersuai dan ubah hala ke halaman utama

<p>Saya menggunakan <kod>get_delete_post_link</code> untuk memadamkan siaran tersuai dari bahagian hadapan, tetapi selepas memadamkan saya mendapat halaman 404. Bagaimana untuk mengubah hala ke halaman utama selepas memadamkan siaran tersuai? </p> <p>Saya memasukkan kod ini dalam functions.php: </p> <pre class="brush:php;toolbar:false;">function wp_delete_post_link($link = 'Delete Post', $before = '', $after = '') { global $post; $link = "<a href='" wp_nonce_url( get_bloginfo('url') . "/wp-admin/post.php?action=delete&amp;post=" . $post->ID, 'delete-post_' . $post->ID) .$link.</a" echo $sebelum $link . }</pre> <p>Kemudian saya mencipta kod pendek untuk menjana butang padam: </p> <pre class="brush:php;toolbar:false;">function wpc_elementor_shortcode( $atts ) { wp_delete_post_link(); } add_shortcode( 'my_shortcode', 'wpc_elementor_shortcode');</pre> <p>Adakah terdapat sebarang cara untuk menambah baik kod ini untuk mengubah hala selepas pemadaman? </p>
P粉590428357P粉590428357431 hari yang lalu480

membalas semua(2)saya akan balas

  • P粉020556231

    P粉0205562312023-09-05 00:57:37

    Cuba ini:

    /**
     * template_redirect Action Hook.
     * Redirect users to home page
     * after deleting a custom post type post.
     */
    function redirect_on_delete() {
        // Custom post type plural name or rewrite slug name.
        $custom_post_type = 'CUSTOM_POST_TYPE';
    
        $regex = "/" . $custom_post_type . ".*" . preg_quote(  "/?deleted=", "/" ) . "\d+" . "/i";
    
        if ( preg_match( $regex, $_SERVER["REQUEST_URI"] ) ) {
            \nocache_headers();
            if ( \wp_safe_redirect( esc_url( get_home_url() ) ) ) {
                exit;
            };
        }
    }
    add_action( 'template_redirect', 'redirect_on_delete', 10, 1 );

    balas
    0
  • P粉609866533

    P粉6098665332023-09-05 00:40:08

    Saya mencuba banyak coretan kod untuk mengubah hala selepas siaran tersuai dipadamkan tetapi tiada satu pun daripada mereka yang berjaya. Jadi saya mencuba pendekatan lain: mengubah hala halaman 404 ke papan pemuka editor bahagian hadapan tersuai yang saya bina untuk pengguna peranan editor. Kodnya adalah seperti berikut:

    function editor_redirect_404() {
        global $wp_query;
        if ( $wp_query->is_404 ) {
          wp_redirect( home_url( '/dashboard/' ) );
          exit;
        }
    }
    add_action('template_redirect', 'editor_redirect_404', 1);

    Saya tidak mahu pelawat ke tapak mengalami perkara ini (mereka mempunyai 404 halaman biasa), jadi ubah hala ini hanya akan digunakan jika pengguna log masuk dan mempunyai peranan editor. Ini dicapai dengan menggunakan penjana bersyarat daripada pemalam WPCodeBox.

    balas
    0
  • Batalbalas