【问题标题】:Change the Date of a Review in Magento在 Magento 中更改审核日期
【发布时间】:2015-08-29 16:33:54
【问题描述】:

Magento 评论遵循以下格式:-

  • 总结
  • 审查正文
  • 审核日期

我需要将审核日期更改为自定义日期。

请有人指导我如何去做这件事?我曾尝试在后端编辑评论,但我唯一可以更改的部分是评论的摘要和正文。

如果您能告诉我应该更改数据库中的哪个位置,我将不胜感激。或者,如果有一种方法可以在后端更改此设置,而无需安装扩展程序,那就太好了。

【问题讨论】:

    标签: magento


    【解决方案1】:

    前言

    Magento Admin 后端没有地方可以编辑产品评论的日期。您必须直接在 SQL 数据库中以编程方式执行此操作。

    以下说明将帮助您直接在 SQL 数据库中进行更改


    1.) 查找评论 ID

    登录到您的 Magento 后端管理区域并在菜单中转到此处:

    Magento 管理 >> 目录 >> 评论和评级 >> 客户评论 >> 所有评论

    所有评论的结果表格中,找到您要更改日期的单条评论。不要点击评论,因为 ID 只显示在所有评论的表格中。

    记住这个 ID


    2.) 更改数据库中的日期

    我使用 PhpMyAdmin 来访问我的 Magento SQL 数据库。您可以使用任何适合您的 SQL 管理平台。

    1. 登录您的 SQL 数据库并浏览名为“review”的表。
    2. 在该表中,您将看到名为“review_id”的列。
    3. 在“review.review_id”列中找到与您要更改 Magento 日期的评论 ID 相匹配的行。
    4. 点击该行上的“Edit”并更改它的“created_at”值。
    5. 点击“开始”保存对行的更改。

    大功告成。

    检查 Magento 以确保它显示更新的日期。


    有用的提示

    • created_at”中的日期值必须采用 SQL 日期时间格式。这是 'YYYY-MM-DD hh:mm:ss'。
    • Magento 对时区很敏感。您可能需要调整您使用的日期值来弥补这一点 - 以便它以您想要的方式显示。
    • SQL 'review' 表未列在我在 PhpMyAdmin 中表名的第一页上。为了找到它,我必须点击表名的第二页。
    • 在 PhpMyAdmin 中点击错误的内容很容易毁掉您的网站。所以不要在那里胡闹。

    【讨论】:

      【解决方案2】:

      我想通过直接操纵来自数据库评论详细信息。虽然这似乎不鼓励,但由于它可能是一两条记录,因此创建自定义解决方案是不可行的。

      运行此 MySQL 以从数据库中获取评论信息可能会帮助您找到您正在尝试编辑的评论。

      SELECT 
        rd.`detail_id`,
        rd.`review_id`,
        r.`created_at`,
        rd.`title`,
        rd.`detail`,
        rd.`nickname`,
        r.`review_id` 
      FROM
        `review_detail` rd 
        LEFT JOIN review r 
          ON rd.`review_id` = r.`review_id` 
      ORDER BY rd.`detail_id` DESC 
      

      【讨论】:

        【解决方案3】:

        您可以将所有 Magento 1.x 评论设置为我们创建的订单日期:

        START TRANSACTION;
        
        UPDATE review r INNER JOIN review_detail rd ON (rd.review_id = r.review_id AND r.entity_id = 1) INNER JOIN sales_flat_order_item oi ON (oi.product_id = r.entity_pk_value) INNER JOIN sales_flat_order as o ON (o.entity_id = oi.order_id) SET r.created_at = o.created_at;
        
        SELECT r.review_id, r.created_at as review_date, o.created_at as order_date, o.increment_id, oi.sku FROM review r INNER JOIN review_detail rd ON (rd.review_id = r.review_id AND r.entity_id = 1) INNER JOIN sales_flat_order_item oi ON (oi.product_id = r.entity_pk_value) INNER JOIN sales_flat_order as o ON (o.entity_id = oi.order_id) GROUP BY oi.product_id ORDER BY r.created_at DESC;
        
        COMMIT;
        

        在 Magento 1.9.x 上测试和验证

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-10-02
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-04-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多