小编Lia*_*hur的帖子

不应直接访问订单属性 - WooCommerce 3.0

我刚刚将我当地的WooCommerce网站升级到3.0.一切都像平常一样完美,但我注意到打开调试后我得到了以下数百条通知:

[05-Apr-2017 12:25:00 UTC] PHP Notice: id was called <strong>incorrectly</strong>. Order properties should not be accessed directly. Please see <a href="https://codex.wordpress.org/Debugging_in_WordPress">Debugging in WordPress</a> for more information. (This message was added in version 3.0.) in C:\xampp\htdocs\dev\wp-includes\functions.php on line 4137

因此看起来WooCommerce正在退回能够直接调用订单数据.这个代码被触发的一个例子就是我的functions.php文件中的这个函数:

function eden_woocommerce_order_number($original, $order)
{
    return 'EDN-' . str_pad($order->id, 10, 0, STR_PAD_LEFT);
}
Run Code Online (Sandbox Code Playgroud)

这个函数只是将"EDN"添加到订单ID的开头并填充10个字符,但是WooCommerce不喜欢我的调用$order方式 - 重写3.0这样的函数的最佳方法是什么?

php wordpress woocommerce

15
推荐指数
2
解决办法
2万
查看次数

纯CSS中的弯曲边框?

我想知道是否有可能只使用CSS实现弯曲边框(带笔划)?目前我正在使用图片为我的网站标题创建弯曲的边框:

使用图像的弯曲边框

我想将其更改为CSS解决方案,以便在更改内容量时我不必更改图像 - 我需要这些内容是动态的和响应式的,我已设法使用border-radius绘制曲线:

使用CSS的弯曲边框

这对我来说效果要好得多,但是我想知道是否可以为它添加笔划以使其看起来更像图像表示?任何帮助是极大的赞赏.这是我为实现这个目的而编写的代码:

<div class="slider">
  <div class="slide">
    <!-- Content -->
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

.slider {
  background: #21639e;
}
.slider .slide {
  background: url("image.jpg") no-repeat #21639e;
  border-radius: 100%/0 0 30px 30px;
}
Run Code Online (Sandbox Code Playgroud)

我确实尝试添加border-bottom: 5px solid #fff;到.slide类,但最终看起来像这样:

使用带边框的CSS弯曲边框

我已经为你创建了一个jsfiddle来测试我想要实现的目标.

css border css3 css-shapes

6
推荐指数
1
解决办法
9953
查看次数

错误:页面包含属性"price",它不是架构的一部分

我在我们的一个客户网站上的产品页面中添加了一些丰富的代码段:

<div class="osetDesc" itemscope itemtype="http://schema.org/Product">
    <div class="osetBikesImg">
        <img itemprop="image" src="images/oset/oset-12-5-eco_1.jpg" alt="OSET 12.5 ECO" class="largeImg" id="largeImg1" />
        <div class="osetSmall">
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_1.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_2.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_3.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_4.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_5.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
            <a href="javascript:void(0)" class="thumb1"><img src="images/oset/oset-12-5-eco_6.jpg" alt="OSET 12.5 ECO" class="smallImg" /></a>
        </div>
    </div>
    <div class="osetText">
        <h2 itemprop="name">OSET 12.5 ECO …
Run Code Online (Sandbox Code Playgroud)

google-webmaster-tools rich-snippets schema.org

5
推荐指数
1
解决办法
4273
查看次数

使用OpenCart 2.1.1.1在PHP中发送附件

知道OpenCart 2.0.1.1的人是否知道如何实现system/libary/mail.php中的以下addAttachment函数:

public function addAttachment($filename) {
  $this->attachments[] = $filename;
}
Run Code Online (Sandbox Code Playgroud)

进入目录/ controller/information/contact.php - 这样默认的联系表格还可以包含附件上传功能?我尝试了这个,但没有骰子.

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
  unset($this->session->data['captcha']);

$mail = new Mail($this->config->get('config_mail'));
$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->request->post['email']);
$mail->setSender($this->request->post['name']);
$mail->setSubject(sprintf($this->language->get('email_subject'), $this->request->post['name']));
$mail->setText(strip_tags($this->request->post['enquiry']));
$mail->addAttachment($this->request->post['file']);
$mail->send();
$this->response->redirect($this->url->link('information/contact/success'));
}
Run Code Online (Sandbox Code Playgroud)

php opencart2.x

5
推荐指数
1
解决办法
3610
查看次数

get_product_from_item($item) 已弃用 WooCommerce 中的替代品

我正在尝试修复这个不受支持的 SagePay 插件中的一些已弃用的功能。

如何替换 WooCommerce 中以下已弃用的代码片段?

foreach ($order->get_items() as $item) {
if ($item['qty']) {
  $product = $order->get_product_from_item($item);
Run Code Online (Sandbox Code Playgroud)

我可以看到这是它的替代品:

@deprecated 在未来版本中添加弃用通知。替换为$item->get_product()

但仅仅改变它是$product = $item->get_product();行不通的。我也尝试将该行更改为:

$product = wc_get_product($item['id']);

但它会在结帐过程中导致内部服务器错误。

php wordpress checkout opayo woocommerce

3
推荐指数
1
解决办法
6535
查看次数