通过自定义字段中的图像网址更改woocommerce图像

时间:2018-05-01 18:57:23

标签: wordpress woocommerce wordpress-theming woocommerce-theming

我正在尝试建立一个联盟网站,我需要导入10.000+产品。我使用WP All Import,它让我可以选择将图片下载到我的服务器。但是你可以想象所有的图片一起填充了我所拥有的空间并使我的网站和导入速度变慢。

我可以将图片网址保存为自定义字段,我想在我的img标记中使用此URM,但我不知道如何完成此操作。我试过谷歌搜索,但我这个问题太具体了。我没有得到构建模板的所有神秘代码。我认为它就像替换img标签的src一样容易,但我甚至无法找到img标签来做到这一点。我可以想象,如果很难找到img标签,那么用自定义字段替换src值就更难了。

有人可以告诉我如何实现目标吗?

1 个答案:

答案 0 :(得分:1)

这没有详细记录,但您可以使用Private Declare PtrSafe Function BringWindowToTop Lib "user32" (ByVal lngHWnd As LongPtr) As LongPtr Private Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMiliseconds As Long) Sub switching_pdfs() Dim i As Integer, j As Integer ptr1 = FindWindow(vbNullString, "Some PDF 1.pdf - Acrobat Reader") ptr2 = FindWindow(vbNullString, "Some PDF 2.pdf - Acrobat Reader") For i = 1 To 30 For j = 1 To 4 BringWindowToTop (ptr1) Sleep 100 BringWindowToTop (ptr2) Sleep 100 Next j BringWindowToTop (ptr1) Application.SendKeys "{RIGHT}": Sleep 500: DoEvents 'should move to the next page in the first PDF BringWindowToTop (ptr2) Application.SendKeys "{RIGHT}": Sleep 500: DoEvents 'should move to the next page in the second PDF Next i End Sub 过滤器。当没有图像附加到产品时,将调用此功能。

woocommerce_placeholder_img

您可以在codex here中看到这一点。您似乎还可以使用add_filter( 'woocommerce_placeholder_img', 'replace_woocommerce_image' ); function replace_woocommerce_image( $size ) { //we will need access to the global post object //this way we know which product to replace for global $post; //check for the custom image url $src = get_post_meta( $post->ID, '_image_url', true ); //if not image url is found, use the default if( ! $src ) $src = wc_placeholder_img_src(); return '<img src="' . $src . '" />'; } 过滤器,该过滤器仅过滤源网址,而不是整个woocommerce_placeholder_img_src标记。

祝你好运!