我正在修改 Tumblr 主题。我有一个页面时事通讯,并且仅在此页面上我想添加一个注册表单(硬编码)。
是否可以在 Tumblr 中查看当前页面是否 == 'newsletter' 或其他内容?也许是通过身份证?
我知道帖子是可能的,但我需要一个页面。
谢谢!
我正在修改 Tumblr 主题。我有一个页面时事通讯,并且仅在此页面上我想添加一个注册表单(硬编码)。
是否可以在 Tumblr 中查看当前页面是否 == 'newsletter' 或其他内容?也许是通过身份证?
我知道帖子是可能的,但我需要一个页面。
谢谢!
一个(稍微)更安全的解决方案/黑客 -
{block:PermalinkPage}{block:Posts}{block:PostTitle}
<script>
var postID = '{PostID}',
postTitle = {JSPostTitle};
if (!postID && postTitle === 'Name of your Newsletter Page') {
// Tumblr custom "pages" have no post ID
// Dynamically insert your HTML, or Dynamically "Show" a hidden element
}
</script>
{/block:PostTitle}{/block:Posts}{/block:PermalinkPage}
Name of your Newsletter Page
您在 Tumblr 上分配时事通讯页面的页面标题在哪里。
将其包装<script>
起来{block:PermalinkPage}...etc
可确保脚本仅在正确类型的页面上呈现。
然后,为了安全起见,我们必须检查这个永久链接页面没有Post ID,所以我们不会意外匹配实际的Post。对于没有帖子 ID 的永久链接页面,唯一的另一种可能性是自定义 tumblr 页面,因此只需将页面标题检查为某个预设值即可。
一般来说,基于window.location
页面的切换确实不是一个好的解决方案。
至于创建/显示注册表单——我个人会在 Tumblr 主题上对表单进行硬编码,display: none
然后用 JavaScript 切换可见的表单——但这是我的观点。您也可以使用脚本将其插入到 DOM 中。
不幸的是,该功能在 Tumblr 中不存在。您需要做的是检查您所在页面的 URL,这非常简单。
您应该能够在 JavaScript 中执行以下操作:
var currentPath = window.location.pathname; // store current path
if( currentPath.indexOf('newsletter') ) { // check if 'newsletter' is in our path
// add your sign up form here
}