首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向ikiwiki模板添加字体链接

向ikiwiki模板添加字体链接
EN

Stack Overflow用户
提问于 2016-06-16 11:09:28
回答 2查看 37关注 0票数 1

我想将以下内容添加到ikiwiki中所有HTML页面的所有标题中。

代码语言:javascript
复制
<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Tangerine">
<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Romanesco">
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800,400italic,600italic,700italic' rel='stylesheet' type='text/css'/>
<link href='https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,600,700,800,400italic,600italic,700italic' rel='stylesheet' type='text/css'/>
<link href='https://fonts.googleapis.com/css?family=PT+Sans:400,600,700,800,400italic,600italic,700italic' rel='stylesheet' type='text/css'/>

我试图将这些行添加到自定义的templates/page.tmpl.mdwn中,但是每次部署wiki时,都不会添加这些行。

我做错了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-12 07:51:12

$git_repo/templates中,创建一个名为page.tmpl的文件,它是/usr/share/ikiwiki/templates/page.tmpl的副本--或者该文件在本地系统中的位置。

然后,您可以修改$git_repo/templates/page.tmpl以添加您想要的任何内容。

票数 1
EN

Stack Overflow用户

发布于 2019-08-31 02:42:28

我使用插件将开图数据添加到所有页面的HTML上:

代码语言:javascript
复制
#!/usr/bin/perl

package IkiWiki::Plugin::opengraph;

use warnings;
use strict;
use IkiWiki 3.00;

our $VERSION = '0.1.4';

sub import {
    hook(type => "pagetemplate", id => "opengraph", call => \&opengraph_tags);
}

sub opengraph_tags {
    my %args = @_;
    ${args}{template}->param('OPENGRAPH' => 1);
    my ${title} = pagetitle(${args}{destpage});
    my ${url} = urlto(${args}{destpage}, 'index', '1');
    my ${image} = urlto('logo.png', 'index', '1');
    my ${type} = pagetype(${args}{destpage});
    my ${opengraph_title} = ${title} || ${config}{'opengraph_title'} || "ikiwiki";
    my ${opengraph_description} = ${config}{'opengraph_description'} || "ikiwiki";
    my ${opengraph_type} = ${type} || ${config}{'opengraph_type'} || "website";
    my ${opengraph_image} = ${image} || ${config}{'opengraph_image'} || "http://ikiwiki.info/logo/ikiwiki.png";
    my ${opengraph_url} = ${url} || ${config}{'opengraph_url'} || "http://ikiwiki.info/";
    my ${opengraph_tags} =<<EOF;
<meta property="og:title" content="${opengraph_title}">
\t<meta property="og:description" content="${opengraph_description}"/>
\t<meta property="og:type" content="${opengraph_type}">
\t<meta property="og:image" content="${opengraph_image}">
\t<meta property="og:url" content="${opengraph_url}">
EOF
    ${args}{template}->param('OPENGRAPH_TAGS' => ${opengraph_tags})
}

1;

然后在page.tmpl上添加了以下内容:

代码语言:javascript
复制
<TMPL_IF OPENGRAPH>
<TMPL_VAR OPENGRAPH_TAGS>
</TMPL_IF>

您可以使用相同的方法动态地将元素添加到页面的HTML部分,或者您可以使用一种更简单但更难实现的方法--直接在page.tmpl文件上编写HTML。

关于page.tmpl

来自文档

模板文件不同于模板页,因为它们具有扩展名.tmpl。Ikiwiki广泛使用模板文件来生成html。它们可以包含通常在wiki页面上不允许的html。 默认情况下,模板文件位于/usr/share/ikiwiki/ Template中;可以使用templatedir设置首先搜索另一个目录。定制的模板文件也可以放在wiki源文件的“template /”目录中--放在那里的文件覆盖了templatedir中的模板/目录。

确保正在修改的page.tmpl文件存储在模板目录下。请注意wiki.setup文件上的此选项:

代码语言:javascript
复制
# additional directory to search for template files
templatedir: /usr/share/ikiwiki/templates
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37857449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档