WordPress的Etsy商品导入插件

2022-03-26 0 582

这个插件目的就是发现etsy好的产品时,快速导入网站进行修改,可导入文章、商品[需要改动]等文章类型。因为etsy中国网络访问不了,还制作了个商品接口配合使用,所以这个插件,不能单独使用,需要配合api使用。

一、wordpress插件

插件安装到wordpress,配合QQWorld Auto Save Images插件把图片本地化效果更佳使用效果更佳。注意需要改动的地方“api的地址”改为你的api文件地址。

<?php
/*
Plugin Name: etsy 商品导入
Plugin URI: http://www.lingchenw.cn/
Description: etsy 商品导入插件,根据商品url,导入etsy到文章、商品等
Version: 1.0.0
Author: 殷江碧
Author URI: http://www.lingchenw.cn/
*/
add_action( 'admin_menu', 'register_etsy_page' );
function register_etsy_page() {
add_menu_page("etsy商品导入", "etsy商品导入", 'administrator', 'etsypage', 'etsypage_html');
}
function etsy_shouye(){
$act = @$_GET["act"];
switch ($act) {		
		case 'import':
		etsy_import();
		break;
		
		default:
		etsy_homepage();
		break;		
	}

  
}
function etsypage_html(){
etsy_shouye();
}

function etsy_import(){
    $url = @$_REQUEST["url"];
    $url = explode("\r\n", $url);
    if(is_array($url)){
        $apiurl = "api的地址";
        for ($i = 0; $i < count($url); $i++) {
        $info = file_get_contents($apiurl."?url=".$url[$i]);
        $info = json_decode($info);
        $post_title = $info -> title;
        $post_content = $info -> description;
        $imgdata = $info -> img;
        for ($i = 0; $i < count($imgdata); $i++) {
             $post_content .= "<br><img src='".$imgdata[$i]."'>";
        }
        $post_category = $_REQUEST['post_category'];
        $post_author = $_REQUEST['user_id'];
        $my_post = array(
          'post_title'    => $post_title,
          'post_content'  => $post_content,
          'post_status'   => "publish",
          'post_author'   => $post_author,
          'post_category' => $post_category
        );
        wp_insert_post( $my_post );
        //var_dump($info);
        }
    }else{
        etsy_homepage();
    }
}

function etsy_homepage(){
    ?>
	<form style="width:80%;margin:10% auto" name="post" action="/wp-admin/admin.php?page=etsypage&act=import" method="post" id="quick-press" class="initial-form hide-if-no-js">
		<div class="textarea-wrap" id="description-wrap">
			<label for="content">链接</label>
			<textarea name="url" id="url" placeholder="请输入etsy商品链接(一行一个,但不宜超过4个)" class="mceEditor" rows="10" cols="15" autocomplete="off"></textarea>
		</div>
<input type="hidden" id="user_id" name="user_id" value="<?php echo get_current_user_id();?>">
<h5>选择分类:</h5>
<?php
$args=array(
'orderby' => 'ID',
'order' => 'ASC',
'hide_empty' => false,
);
$categories=get_categories($args);
foreach($categories as $category) {
?>
<input id="post_category[]" name="post_category[]" class="components-checkbox-control__input" type="checkbox" value="<?php echo $category->term_id;?>"><?php echo $category->name;?>
&nbsp;&nbsp;

<?php
}
?>
		<p class="submit">
		<input type="submit" name="save" id="save-post" class="button button-primary" value="采集发布">
		<br class="clear">
		</p>

	</form>
<?php }

二、api程序

注意api程序需要放在国外服务器,不然不能使用的,同样需要修改“api的地址”,代码如下:

<?php
$apiurl = "api的地址";
@$imgurl = $_REQUEST["imgurl"];
if($imgurl){
header('Content-Type: image/jpeg');
echo file_get_contents($imgurl);
exit;
}


function jiequ($str, $leftStr, $rightStr){//截取内容
    $left = strpos($str, $leftStr);
    $right = strpos($str, $rightStr,$left);
    if($left < 0 or $right < $left) return '';
    return substr($str, $left + strlen($leftStr), $right-$left-strlen($leftStr));
}
function getetsy($url){//获取etsy单商品的信息
$etsy = array();
$html = file_get_contents($url);
$imghtml = jiequ($html,"wt-order-xs-1 wt-flex-direction-column-xs wt-align-items-flex-end","wt-overlay image-overlay wt-display-flex-xs wt-justify-content-center");
preg_match_all('/https:\/\/(.*).jpg/', $imghtml, $matches);
$imgdata = $matches[0];//产品图片
for ($i = 0; $i < count($imgdata); $i++) {
    $imgdata[$i] = str_replace("75x75","fullxfull",$imgdata[$i]);
     $imgdata[$i] = $apiurl."?imgurl=".$imgdata[$i];
}
$title = trim(jiequ($html,"<h1 class=\"wt-text-body-03 wt-line-height-tight wt-break-word\" data-buy-box-listing-title=\"true\">","</h1>"));//产品标题
$miaoshu = trim(jiequ($html,"<p data-product-details-description-text-content class=\"wt-text-body-01 wt-break-word\">","</p>"));//产品描述
$etsy["title"] = $title;
$etsy["img"] = $imgdata;
$etsy["description"] = $miaoshu;
return $etsy;
}


@$url = $_REQUEST['url'];
if($url){
header('content-type:application/json;charset=utf-8');
$info = getetsy($url);
print_r(json_encode($info));
exit;
}
exit("你好,凌晨学院网(www.lingchenw.cn)!");
?>

插件截图(嫌丑的可以自己改改):

WordPress的Etsy商品导入插件

 

本文转载自互联网 原文地址https://www.vience.cn/blog/687.html

收藏 (0) 打赏

感谢您的支持,我们会继续努力的!

打开支付宝/微信/QQ扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. 本站所有教学内容和资源均来源于本站原创和网络收集以及用户自主上传,如有侵权请带证联系本站客服进行处理!邮箱:team@lcwl.fun
2. 对于非本站原创的资源不保证所提供下载资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系本站客服处理,有奖励!
3. 除本站原创教学或资源外其余资源您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 本站原创资源如需商用还请申请商业授权,否则本站有权追究其法律责任!
5. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有学币奖励额外收入!

凌晨资源网 WordPress WordPress的Etsy商品导入插件 https://www.lingchenw.cn/jishu/1446.html

上一篇: mysql清除注释
下一篇: iapp应用签到示例
常见问题
  • 本站所有付费教程均可单独付费或者开会员学习,自己购买或者开了会员就可以学习,来凌晨学院报名学习送会员,并且有讲师一对一辅导培训教学,师生互动化,定期布置作业等
查看详情
  • 本站所有资源版权均属于原作者所有,资源中标注可商用的可以商用的代表是本团队自主研发公布可商用的产品,未标注可商用所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务

学习手机编程软件开发
手机编程软件开发

你知道吗?用手机也能开发制作软件,满足自己的编程心,做属于自己的软件

报名学习
自媒体短视频
副业做自媒体短视频

想做自媒体短视频剪辑给自己多一份副业,只需一部手机你也可以

报名学习
搭建网站必备云互联主机
链未云互联

搭建网站,后台云服务等必备云服务器互联主机,IDC云主机

现在使用
Fa快捷助手
用手点一点就能开发做软件

不用记编程语法,不用一行一行手敲代码,用手点一点就能开发制作软件

点击下载