我正在使用pushState/hash bangs构建一个基于AJAX的投资组合模块,因为我排除了没有JavaScript的浏览器,唯一让我担心的是HTML自定义数据属性在SEO方面的限制.
例如,使用以下代码:
<ul class="gallery" data-anchor="/photography/example/" data-title="Example"></ul>
Run Code Online (Sandbox Code Playgroud)
数据标题是否会被编入索引,即Google会收集该文本内容吗?或者我是否需要在列表中或周围添加标题标记作为描述性补充?一旦用户点击该特定图库,数据标题就会用作新的窗口标题.
在运行Nginx和WP并设置相当永久链接时遇到500问题.我一直在尝试谷歌的一些不同的方法,但似乎没有任何帮助.
配置 -
server {
listen 80;
root /var/www/mydomain.com/public_html;
index index.php index.html index.htm;
server_name .mydomain.com;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
Run Code Online (Sandbox Code Playgroud)
所有文件都可以很好地加载,如果使用默认的永久链接设置,则页面可以正常工作.奇怪的是,如果我检查网络日志我首先看到200 OK正在收到,然后立即跟着500.任何想法?
编辑:设置关闭,因为我转而使用Apache.将标记正确答案,因为它似乎帮助了其他人.
我正在使用jQuery插件Cloud Zoom,并且我已经更改了初始化,以便在用户点击"放大按钮"而不是悬停时缩放图像.我不确定当用户离开图像时如何取消/删除此事件,我很想知道最佳做法是什么.
这就是脚本的样子 -
$('.magnify').click(function() {
$('.cloud-zoom').CloudZoom({ showTitle: false });
return false;
});
$('.display').mouseout(function() {
// unset?
});
Run Code Online (Sandbox Code Playgroud)
(".display"是一个容器)绑定/取消绑定是否必要?它似乎可以解决问题,但我希望有一个更简单的方法,因为它只是一个函数.
我试图用一系列url字符串替换最后一个正斜杠,用数字符号交换正斜杠,就像这样 -
http://example.com/about/our-company
Run Code Online (Sandbox Code Playgroud)
至
http://example.com/about#our-company
Run Code Online (Sandbox Code Playgroud)
使用JS和jQuery我已经尝试在每个字符串上应用replace函数但不确定如何仅针对最后一个正斜杠.
$('.submenu a').each(function() {
var url = $(this).attr('href');
url = url.replace(/\//g, '#');
console.log(url);
// replaces all
});
Run Code Online (Sandbox Code Playgroud) 我要疯了.我唯一想做的就是将这些规则添加到我正在开发的网站中:
fastigheter-spanien/x property/X&lang=sv
fastigheter-usa/x property/X&lang=sv
properties-spain/X property/X&lang=en
properties-usa/X property/X&lang=en
Run Code Online (Sandbox Code Playgroud)
其中X是帖子的名称.这些都是自定义帖子类型.我最终遇到这种情况的原因是我使用多种语言,但希望客户端不必为每篇文章创建多个帖子(他们有很多选项和图片,不得不重新发布它们几乎不属于题).我已经研究过在functions.php中创建rewrite_rules以及修改.htaccess文件但是无法让它工作.这些重写非常简单,不需要使用任何函数.我不能只调整.htaccess文件吗?
试着
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/fastigheter-spanien/([^\./]+)
RewriteCond %{REQUEST_URI} !^/fastigheter-usa/([^\./]+)
RewriteCond %{REQUEST_URI} !^/properties-spain/([^\./]+)
RewriteCond %{REQUEST_URI} !^/properties-usa/([^\./]+)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^fastigheter-spanien/([^\./]+)$ property/$1 [L]
RewriteRule ^fastigheter-usa/([^\./]+)$ property/$1 [L]
RewriteRule ^properties-spain/([^\./]+)$ property/$1&lang=sv [L]
RewriteRule ^properties-usa/([^\./]+)$ property/$1&lang=sv [L]
Run Code Online (Sandbox Code Playgroud)
这只是给了我404.任何想法?
使用LazySizes插件(https://github.com/aFarkas/lazysizes)我正在尝试构建一个图像网格,每个图像都有一个替代版本用于较小的视口.网格(容器)是基于列/行的简单百分比布局.
我不太确定如何声明图像,我只看到更大的版本.我选择使用高分辨率图像,并将容器的最大宽度缩小50%.这是图像的标记样本:
<img data-sizes="(min-width: 320px) 100vw, (min-width: 768px) 100vw"
data-src="images/grid/image-small.jpg"
data-srcset="images/grid/image-small.jpg 720w, images/grid/image-big.jpg 1440w"
alt="" class="lazyload" />
Run Code Online (Sandbox Code Playgroud)
我只需要一个768px的断点.令人困惑的部分是data-sizes属性.我应该在这里声明另一个尺寸,因为图像是高分辨率还是我应该让它们具有全宽?
补充:脚本启动时生成的标记:
<img data-sizes="(min-width: 320px) 100vw, (min-width: 768px) 1440px"
data-src="images/grid/image-small.jpg"
data-srcset="images/grid/image-small.jpg720w, images/grid/image-big.jpg 1440w"
alt="" class=" lazyloaded"
sizes="(min-width: 320px) 100vw, (min-width: 768px) 1440px"
srcset="images/grid/image-small.jpg 720w, images/grid/image-big.jpg 1440w"
src="images/grid/image-small.jpg">
Run Code Online (Sandbox Code Playgroud) 这可能是一个简单的解决方案,但我无法理解它.我想要做的是制作一个可以点击子图层的叠加图层,而不会给孩子们分配任何交互.像这样 -
<div class="overlay">
<div class="content">Lorem ipsum dolor.</div>
</div>
Run Code Online (Sandbox Code Playgroud)
jQuery示例函数:
$('.overlay').click(function() {
$(this).hide();
});
Run Code Online (Sandbox Code Playgroud)
这里发生的是即使我点击子图层,该函数也会运行.我该如何设置它以便只有孩子周围的区域受到影响?
使用JavaScript,我希望将1-100之间的值转换为1000-150000之间的相应值.对此最好的方法是什么?比较和乘法/除数组值,还是有更简单的方法?