Wie aktiviere ich Symlinks nach der Installation von SUPEE-9767 V2?


10

Es scheint, dass SUPEE-9767v2 die Option "Erweitert -> Entwickler -> Vorlageneinstellungen" deaktiviert und entfernt hat, mit der wir Symlinks aktivieren / deaktivieren können.

Was ist die andere Möglichkeit, Symlinks nach der Installation des V2-Patches zu aktivieren?


Wenn Sie SUPEE-9767 V2 installieren, können Sie die Schritte gemeinsam nutzen.
Gem

Antworten:


21

Sie können dies derzeit nur in der Datenbank tun.

1. SQL

Entweder ...

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

Oder wenn kein Eintrag vorhanden ist ...

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

Hinweis: Vergessen Sie nicht, das Tabellenpräfix hinzuzufügen, wenn Sie eines verwenden.

2. Skript

Oder führen Sie dies von der Magento-Wurzel aus ...

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

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

3. local.xml

Fügen Sie dem app/etc/Verzeichnis ein weiteres XML hinzu, local.SUPEE-9767.xmldas überschrieben werden soll local.xml.

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

4. "Modul"

Erstellen Sie damit eine Mini-Erweiterung system.xml, um die Konfigurationsoption für das Admin-Backend wiederherzustellen:

<?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>

Fügen Sie eine leere Klasse für hinzu backend_model, um das Speichern des Konfigurationswerts zu aktivieren . Dank @colinmollenhour setzen Sie anstelle einer leeren Klasse einfach das Backend-Modell auf das übergeordnete zurück.

Download: https://github.com/sreichel/magento-StackExchange_AllowSymlink


9

Am einfachsten ist es, n98-magerun zu verwenden , ein sehr nützliches Befehlszeilen -Entwicklungstool für Magento

Schalten Sie die Symlinks für alle Store-Ansichten mit ein oder aus

n98-magerun.phar dev:symlinks 0

Um zu überprüfen, ob Symlinks aktiviert sind, verwenden Sie

n98-magerun.phar config:dump | grep symlink

1

IN Patch 9767 v2

Unten Code In Datei aktualisiert

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>

Aktualisieren Sie einfach dieses Feld <show_in_default>0</show_in_default>auf1

und Sie werden diese Einstellung wieder sehen

Sobald Sie fertig sind, setzen Sie diese Datei zurück


Ist das nicht V1? In V2 sind diese Zeilen zurück, aber <show_in_default>auf 0 gesetzt. Bitte korrigieren Sie mich, wenn ich falsch liege.
Sv3n

@ sv3n oh mein schlechtes ich sehe v1 Code, gib mir 2 min Ich werde meine Antwort aktualisieren
Murtuza Zabuawala

1
@ sv3n Ich habe die Antwort aktualisiert
Murtuza Zabuawala

Sie sollten keine Kerndateien bearbeiten. Sie können diese Einstellung auf viele andere Arten leicht überschreiben ...
7ochem

1
Erwähnenswert ist das Hinzufügen backend_model, das das Speichern dieses Felds in der Datenbank verhindert.
Sv3n
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.