- Compatibilidade com XF
- 2.3.x
- 2.2.x
- Descrição curta
- Create custom PHP pages with or without XF layout using this add-on. Access XF engine functions like sessions and permissions. Customize head tags, titles, content, and more per page for enhanced user experience. No restrictions on script location; flexible configuration options available.
Este add-on permite criar qualquer número de páginas PHP personalizadas com ou sem o layout XF.
Uma página customizada tem acesso às funções do motor XF, incluindo sessões e permissões.
Todas as páginas customizadas são scripts PHP individuais com configuração própria; é necessário conhecimento de PHP.
Um script de página customizada pode estar acima, abaixo ou dentro da pasta do instalador XF, sem restrições.
Você pode configurar opcionalmente os seguintes itens por página:
Tags <head> personalizadas sobre os padrões do XF (provavelmente de um script externo)
Título da página customizada
Conteúdo da página customizado
Se o conteúdo acima deve ser envolvido pelo layout do XF
Se as tags meta do XF devem ser incluídas para pré-visualizações de conteúdo em redes sociais
Se os rastreadores de navegação devem ser exibidos e quais rastreadores
Instruções de Instalação
Instale o pacote ZIP do add-on (este é um pacote de add-on sem arquivos extras)
Faça uma cópia do script sample.php e nomeie-o como você desejar
Configure o valor da constante do script para a pasta do seu instalador XF; o padrão é DIR
Defina os variáveis $head e/ou $content
Ajuste as parâmetros \ScriptsPages\Setup::set (abaixo) e a instalação está completa
Exemplo (sample.php)
Instruções Críticas
PARAMETROS
Como configurar parâmetros externamente
Para configurar qualquer parâmetro acima a partir de um script externo, defina a constante PHP SCRIPT_PAGE_{KEY} antes de carregar XenForo, ou seja,
Uma página customizada tem acesso às funções do motor XF, incluindo sessões e permissões.
Todas as páginas customizadas são scripts PHP individuais com configuração própria; é necessário conhecimento de PHP.
Um script de página customizada pode estar acima, abaixo ou dentro da pasta do instalador XF, sem restrições.
Você pode configurar opcionalmente os seguintes itens por página:
Tags <head> personalizadas sobre os padrões do XF (provavelmente de um script externo)
Título da página customizada
Conteúdo da página customizado
Se o conteúdo acima deve ser envolvido pelo layout do XF
Se as tags meta do XF devem ser incluídas para pré-visualizações de conteúdo em redes sociais
Se os rastreadores de navegação devem ser exibidos e quais rastreadores
Instruções de Instalação
Instale o pacote ZIP do add-on (este é um pacote de add-on sem arquivos extras)
Faça uma cópia do script sample.php e nomeie-o como você desejar
Configure o valor da constante do script para a pasta do seu instalador XF; o padrão é DIR
Defina os variáveis $head e/ou $content
Ajuste as parâmetros \ScriptsPages\Setup::set (abaixo) e a instalação está completa
Exemplo (sample.php)
PHP:
<?php
// Set PHP Reporting
error_reporting(E_ALL & ~E_NOTICE);
define('__XF__', __DIR__); // EDIT VALUE IF SCRIPT IS NOT IN XF FOLDER
require __XF__ . '/src/XF.php';
XF::start(__XF__);
\ScriptsPages\Setup::set('init', true);
$app = \XF::setupApp('XF\Pub\App');
$app->start();
$request = $app->request();
// EDIT BELOW to set the page's $head and/or $content; the code below is a sample
/** ob_start();
require_once __DIR__ . DIRECTORY_SEPARATOR . pathinfo(__FILE__, PATHINFO_FILENAME) . "-head.php";
$head = ob_get_contents();
ob_end_clean(); **/
/** ob_start();
require_once __DIR__ . DIRECTORY_SEPARATOR . pathinfo(__FILE__, PATHINFO_FILENAME) . "-content.php";
$content = ob_get_contents();
ob_end_clean(); */
// EDIT BELOW TO CONFIGURE
\ScriptsPages\Setup::set([
'breadcrumbs' => ['Item 1' => '/1', 'Item 2' => '/2', 'Item 3' => '/3'],
'head' => $head,
'content' => $content
]);
// STOP HERE
$app->run()->send($request);
PARAMETROS
PHP:
[
'navigation_id' => null, // the navigation tab to highlight
'head' => null, // code to embed inside the <head> tag
'metadata' => true, // include social media meta tags like 'og:*' for social media previews
'title' => null, // the page title; if null, falls back to board title
'breadcrumbs' => true, // true to include breadcrumbs, false to not, or an array of
'content' => null, // the page content; this is required
'raw' => false // whether or not to remove the XenForo layout
]
Para configurar qualquer parâmetro acima a partir de um script externo, defina a constante PHP SCRIPT_PAGE_{KEY} antes de carregar XenForo, ou seja,
CÓDIGO:
define('SCRIPT_PAGE_CONTENT', '<b>Hello world</b>');