Wordpress (PHP): страница не найдена, но есть контент - PullRequest
0 голосов
/ 24 октября 2018

У меня есть класс, который регистрирует новую конечную точку, переписывает правила и затем сбрасывает ее.Он работает отлично, за исключением того, что он также выдает ошибку 404, делая заголовок страницы «страница не найдена» и добавляя некоторые CSS, которые я не хочу.Мне нужно сделать так, чтобы он действительно знал, что моя страница существует.

Это класс, который я написал:

<?php

use Jigoshop\Helper\Render as RenderCore;
use Jigoshop\Frontend\Page\PageInterface;
use Jigoshop\Integration\Helper\Render;


if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly.
}

class twizo_Jigoshop_TFASettings implements PageInterface
{
    function __construct()
    {
        Render::addLocation('twizo-verification', __DIR__);
        add_action('init', function () {
        add_rewrite_endpoint("twizo-verification", EP_ROOT | EP_PAGES | 
EP_PERMALINK);
        add_filter('generate_rewrite_rules', function ($rewrite) {
            $mySettings = [
                '^account/twizo-verification/?$' => 'index.php? 
pagename=twizo-verification'
            ];
            $rewrite->rules = $mySettings + $rewrite->rules;
            return $rewrite->rules;
        });
        flush_rewrite_rules();
    });
    add_filter('jigoshop.frontend.page_resolver.page', function ($args) {
        global $wp_query;
        if ($wp_query->query['pagename'] == 'twizo-verification') {
            return $this;
        }
        return $args;
    });
}

public function action()
{
    $this->renderTFASettings();
}

public function render()
{
}

public function renderTFASettings()
{
    add_action('jigoshop\template\shop\content\before', function () {        
        echo '<h1>My account &raquo; 2FA Settings</h1>';
    });
    add_action('jigoshop\template\shop\content\after', function() {
        echo '<br><a href="./" class="btn btn-default">Go back to My 
account</a>';
    });   

    switch(get_template()) {
        case "twentyfifteen":
            RenderCore::output('layout/twentyfifteen', [
                'content' => Render::get('twizo-verification', 'tfa- 
   settings-body', array())
            ]);
        break;
        case "twentysixteen":
            RenderCore::output('layout/twentysixteen', [
                'content' => Render::get('twizo-verification', 'tfa- 
   settings-body', array())
            ]);
        break;
        case "twentyseventeen":
            RenderCore::output('layout/twentyseventeen', [
                'content' => Render::get('twizo-verification', 'tfa- 
   settings-body', array())
            ]);
        break;
        default: 
            RenderCore::output('layout/default', [
                'content' => Render::get('twizo-verification', 'tfa- 
   settings-body', array())
            ]);
        break;
    }

    exit;
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...