geniv/nette-seo

Nette Framework的SEO扩展

v2.2.8 2019-01-17 23:58 UTC

README

description: 自动将标题和描述块保存到数据库

安装

$ composer require geniv/nette-seo

"geniv/nette-seo": "^2.0"

require

"php": ">=7.0",
"nette/nette": ">=2.4",
"dibi/dibi": ">=3.0",
"geniv/nette-locale": ">=2.0"

包含在应用程序中

存储:(dibi + cache _Seo-Seo)

enabled: false => 停止从数据库加载并跳过加载数据

neon配置

# seo
seo:
#   autowired: true
    tablePrefix: %tablePrefix%
#   enabled: true

neon配置扩展

extensions:
    seo: Seo\Bridges\Nette\Extension

使用

protected function createComponentSeo(ISeo $seo): ISeo
{
    //$seo->setAutoCreate(true);
    return $seo;
}
{control seo:title}
{control seo:title, null, 'default'}
{control seo:description}
{control seo:description, null, 'default'}
{control seo:title 'default-latte'}
{control seo:title 'default-latte', 'default'}
{control seo:description 'default-latte'}
{control seo:description 'default-latte', 'default'}
return usage: {control seo:description 'default-latte'}
{if $presenter['seo']->isTitle()} ... {/if}
{if $presenter['seo']->isTitle('ident')} ... {/if}
{if $presenter['seo']->getTitle()} ... {/if}
{if $presenter['seo']->getTitle('ident')} ... {/if}
{if $presenter['seo']->getTitle('ident', 'default')} ... {/if}
{if $presenter['seo']->isDescription()} ... {/if}
{if $presenter['seo']->isDescription('ident')} ... {/if}
{if $presenter['seo']->gerDescription()} ... {/if}
{if $presenter['seo']->gerDescription('ident')} ... {/if}
{if $presenter['seo']->gerDescription('ident', 'default')} ... {/if}

在layout.latte中使用

<title>{ifset title}{include title} - {else}{control seo:title}{if $presenter['seo']->isTitle()} - {/if}{/ifset}{control seo:title 'default-latte'}</title>
<meta name="description" content="{ifset description}{include description} - {else}{control seo:description}{if $presenter['seo']->isDescription()} - {/if}{/ifset}{control seo:description 'default-latte'}">

警告

标题和描述中的文本标识会自动翻译!!!

{block title}homepage-title{/block}
{block description}homepage-description{/block}

在用法块中: {block title}{block description} 的内容不会保存到数据库!!!