从https://stackoverflow.com/questions/11798336/change-all-website-links-to-affiliate-links-automatically?lq= 1(第二个)获得一个小脚本,将联盟会员标记添加到网址
这就是我在页面标题中添加的内容
<script type="text/javascript" src="http://。。。。。。/js/jquery-1.8.3.min.js"></script>
<script type='text/javascript'>
$("a").click(function() {
addAffiliate(this);
});
myCode = "http://moe.jlist.com/click/99999999?url=";
myAmazonCode = "&tag=99999999"
function addAffiliate(link) {
alert("enterting script: " + link.href);
if ((link.href).indexOf("jlist.com") > -1 && (link.href).indexOf(myCode) < 0) {
link.href = myCode + link.href;
}else if((link.href).indexOf("amazon.com") > -1 && (link.href).indexOf(myAmazonCode) < 0){
link.href = link.href + myAmazonCode;
}
alert(link.href);
return true;
}
</script>
然而,它不起作用,但是当我使用jquery将框架设置为'onload'时,它可以从上面链接提供的url上的jsfiddle.net上运行
其次 我有来自另一个购物网站的转换代码,我希望将其整合到我的代码中 这是他们给我的一个样本
function convert_aff_links( $_body, $_aff_id = '9999999' )
{
$_body = preg_replace
(
'@://(w+\.)?(playasia|play-asia)\.com/?([^/a-zA-Z])@',
'://www.play-asia.com/SOap-23-' . '83-' . $_aff_id . '-50-00.html$3',
$_body
);
$_body = preg_replace
(
'/paOS-(\d{2})/',
'SOap-23-' . '83-' . $_aff_id . '-50-$1',
$_body
);
return $_body;
}
提前致谢
答案 0 :(得分:1)
在加载DOM之前,您的运行时间太早,因此页面中没有a
标记,但要附加到:
<script type='text/javascript'>
$("a").click(function() {
addAffiliate(this);
});
</script>
将其更改为此,以便在文档加载之前不会运行:
<script type='text/javascript'>
$(document).ready(function() {
$("a").click(function() {
addAffiliate(this);
});
});
</script>