Як увімкнути посилання після встановлення SUPEE-9767 V2?


10

Схоже, SUPEE-9767v2 відключив і видалив опцію в "Додатково -> Розробник -> Налаштування шаблону" , яка б дозволила нам увімкнути / вимкнути посилання.

Який інший спосіб увімкнути посилання після встановлення патчу V2?


Під час встановлення SUPEE-9767 V2 ви можете поділитися цим кроком.
Gem

Відповіді:


21

Наразі це можна зробити лише в БД.

1. SQL

Або ...

UPDATE core_config_data SET value = '1' WHERE path = 'dev/template/allow_symlink';

Або якщо запис не існує ...

INSERT INTO core_config_data (config_id, scope, scope_id, path, value)
VALUES (NULL , 'default', '0', 'dev/template/allow_symlink', '1');

Примітка. Якщо не використовується, додайте префікс таблиці.

2. Сценарій

Або запустити це з кореня magento ...

<?php
require_once('./app/Mage.php');
Mage::app();

Mage::getConfig()->saveConfig('dev/template/allow_symlink', '1', 'default', 0);

3. local.xml

Додайте ще один XML до app/etc/каталогу, який хотів local.SUPEE-9767.xmlби замінити local.xml.

<?xml version="1.0"?>
<config>
    <default>
        <dev>
            <template>
                <allow_symlink>1</allow_symlink>
            </template>
        </dev>
    </default>
</config>

4. "Модуль"

Створіть міні-"розширення" з цим, system.xmlщоб повернути параметр config для адміністратора бекенда:

<?xml version="1.0"?>
<config>
    <sections>
        <dev>
            <groups>
                <template>
                    <show_in_default>1</show_in_default>
                    <fields>
                        <allow_symlink>
                            <show_in_default>1</show_in_default>
                            <backend_model>core/config_data</backend_model>
                        </allow_symlink>
                    </fields>
                </template>
            </groups>
        </dev>
    </sections>
</config>

Додайте порожній клас для, backend_modelщоб увімкнути збереження значення конфігурації. Завдяки @colinmollenhour, замість порожнього класу просто скиньте базову модель до батьківської.

Завантажте: https://github.com/sreichel/magento-StackExchange_AllowSymlink


9

Найпростіший спосіб - використовувати n98-magerun, що є дуже корисним інструментом розробки командного рядка для Magento

Увімкнення та вимкнення символьних посилань для всіх переглядів магазину за допомогою

n98-magerun.phar dev:symlinks 0

Щоб перевірити, чи увімкнено символьні посилання

n98-magerun.phar config:dump | grep symlink

1

В патчі 9767 v2

Нижче код оновлено у файлі

app/code/core/Mage/Core/etc/system.xml

--- app/code/core/Mage/Core/etc/system.xml
+++ app/code/core/Mage/Core/etc/system.xml
@@ -601,18 +601,19 @@
                 <label>Template Settings</label>
                 <frontend_type>text</frontend_type>
                 <sort_order>25</sort_order>
-                    <show_in_default>1</show_in_default>
-                    <show_in_website>1</show_in_website>
-                    <show_in_store>1</show_in_store>
+                    <show_in_default>0</show_in_default>
+                    <show_in_website>0</show_in_website>
+                    <show_in_store>0</show_in_store>
                 <fields>
                     <allow_symlink translate="label comment">
                         <label>Allow Symlinks</label>
                         <frontend_type>select</frontend_type>
                         <source_model>adminhtml/system_config_source_yesno</source_model>
+                            <backend_model>adminhtml/system_config_backend_symlink</backend_model>
                         <sort_order>10</sort_order>
-                            <show_in_default>1</show_in_default>
-                            <show_in_website>1</show_in_website>
-                            <show_in_store>1</show_in_store>
+                            <show_in_default>0</show_in_default>
+                            <show_in_website>0</show_in_website>
+                            <show_in_store>0</show_in_store>
                         <comment>Warning! Enabling this feature is not recommended on production environments because it represents a potential security risk.</comment>
                     </allow_symlink>
                 </fields>

Просто оновіть це поле <show_in_default>0</show_in_default>до1

і ви знову побачите це налаштування

Після завершення відновлення цього файлу


Хіба це не V1? У V2 цей рядок повернувся, але <show_in_default>встановлено на 0. Будь ласка, виправте мене, якщо я помиляюся.
sv3n

@ sv3n ох Погано, я бачу код v1, дайте мені 2 хвилини, я
оновлю

1
@ sv3n Я оновив відповідь
Murtuza Zabuawala

Не слід редагувати основні файли. Ви можете легко змінити цей параметр багатьма іншими способами ...
оч.

1
Варто згадати додане, backend_modelщо запобігає збереженню цього поля в БД.
sv3n
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.