Hier ist meine Übersicht über den Patch, nachdem ich ihn gelesen habe
ZEIT SPAREN : Experius bietet einen Patch-Helfer, mit dem Sie die Dateien in benutzerdefinierten Designs, benutzerdefinierten Modulen oder lokalen Überschreibungen finden können, die möglicherweise auch manuell gepatcht werden müssen. Sie finden ihn hier: https://github.com/experius/Magento- 1-Experius-Patch-Helper # magento
Checkout-Formularschlüssel
Wie im anderen Beitrag bereits erwähnt, fügt dieser Patch den folgenden Formularen Formularschlüssel hinzu:
Versand Warenkorb Formular:
app/design/frontend/<package>/<theme>/template/checkout/cart/shipping.phtml
Multishipping-Abrechnungs-Checkout-Formular:
app/design/frontend/<package>/<theme>/template/checkout/multishipping/billing.phtml
Multishipping Versandkasse Formular:
app/design/frontend/<package>/<theme>/template/checkout/multishipping/shipping.phtml
Bestellformular für Multishipping-Adressen:
app/design/frontend/<package>/<theme>/template/checkout/multishipping/addresses.phtml
Rechnungs-Checkout-Formular:
app/design/frontend/<package>/<theme>/template/checkout/onepage/billing.phtml
Versand-Bestellformular:
app/design/frontend/<package>/<theme>/template/checkout/onepage/shipping.phtml
Zahlungskasse:
app/design/frontend/<package>/<theme>/template/checkout/onepage/payment.phtml
Versandart Bestellformular:
app/design/frontend/<package>/<theme>/template/checkout/onepage/shipping_method.phtml
Persistent Billing Checkout-Formular:
app/design/frontend/<package>/<theme>/template/persistent/checkout/onepage/billing.phtml
Darüber hinaus wurden die folgenden JS-Dateien aktualisiert, um mit dieser Änderung kompatibel zu sein:
js/varien/payment.js
skin/frontend/base/default/js/opcheckout.js
Was ist zu tun:
Wenn Sie benutzerdefinierte Versionen dieser Vorlagen verwenden, müssen Sie diese aktualisieren, indem Sie den folgenden Code hinzufügen:
<?php echo $this->getBlockHtml('formkey') ?>
Wenn Sie ein Checkout-Modul eines Drittanbieters verwenden, müssen Sie sich mit diesen in Verbindung setzen, damit sie eine aktualisierte Version ihres Moduls bereitstellen können.
Auch wenn Sie benutzerdefinierte Versionen der zuvor aufgelisteten JS-Dateien haben, müssen Sie diese ebenfalls aktualisieren.
SPAREN SIE IHRE ZEIT :
Fabian Schmengler hat ein nettes kleines Skript geschrieben, um all diese Dinge für Sie zu aktualisieren. Sie finden es hier:
https://gist.github.com/schmengler/c42acc607901a887ef86b4daa7a0445b
WICHTIGER HINWEIS : Die Kasse formkey Validierung über ein neues Konfigurationsfeld unter im Backend geändert wird System> Configuration> Admin> Sicherheit> aktiviert Formular Key Validierung Kasse . DIES IST NICHT STANDARDMÄSSIG AKTIVIERT, daher müssen Sie es aktivieren, um von dieser Sicherheitsfunktion zu profitieren !!! Beachten Sie, dass Sie eine Benachrichtigung im Backend erhalten, wenn es nicht aktiviert ist.
Rückruf zum Hochladen von Bildern
Der Bildergalerie-Controller wurde aktualisiert, um einen Validierungs-Callback hinzuzufügen.
Was ist zu tun
Wenn Sie ein benutzerdefiniertes Modul verwenden, das das Hochladen von Bildern mit folgendem Code ausführt:
$uploader = new Mage_Core_Model_File_Uploader('image');
$uploader->setAllowedExtensions(array('jpg','jpeg','gif','png'));
$uploader->addValidateCallback('catalog_product_image',
Mage::helper('catalog/image'), 'validateUploadFile');
$uploader->setAllowRenameFiles(true);
$uploader->setFilesDispersion(true);
Ich empfehle dringend, dass Sie diesen Code aktualisieren, indem Sie das folgende Stück danach hinzufügen:
$uploader->addValidateCallback(
Mage_Core_Model_File_Validator_Image::NAME,
Mage::getModel('core/file_validator_image'),
'validate'
);
Symlinks
Dieser Patch entfernt das Systemkonfigurationsfeld, mit dem Sie Vorlagen-Symlinks im Backend zulassen können. Früher war es unter System> Konfiguration> Entwickler> Vorlage> Symlinks zulassen . Jetzt ist der gesamte Vorlagenbereich verschwunden.
Darüber hinaus ist dieses Feld jetzt standardmäßig über die Schaltfläche deaktiviert app/etc/config.xml
Das Komische dabei ist, dass Sie eine Benachrichtigung im Backend erhalten, wenn Sie dieses Konfigurationsfeld vor dem Patch aktiviert haben, es jedoch nicht deaktivieren können, da das Feld nicht mehr vorhanden ist.
Die einzige Möglichkeit besteht darin, die folgende SQL-Abfrage auszuführen
UPDATE core_config_data SET value = 0 WHERE path = "dev/template/allow_symlink";
Klärung
Zuerst empfehle ich Ihnen dringend, die beiden Posts zu überprüfen, die Ihnen helfen, den Zweck dieser Symlink-Änderung zu verstehen:
Bei dieser Änderung geht es wirklich darum, hochladbare Inhalte (wie Bilder) über Vorlagenanweisungen aufzurufen.
Das Problem im Zusammenhang mit Symlinks ist nur mit Administratorzugriff ausnutzbar, und Magento hat auch beim Hochladen von Bildern etwas mehr Schutz hinzugefügt.
Bitte beachten Sie, dass es sich um einige Schutzmaßnahmen gegen die bekannte Art und Weise handelt, es zusätzlich zur Einstellung selbst auszunutzen.
Was zu tun ist : Wenn Sie wie ich Modman oder Composer mit Template-Symlinks verwenden, treten einige Probleme auf. Ich versuche immer noch herauszufinden, was hier am besten ist, abgesehen von der Bearbeitung von SQL-Abfragen.
Hauptbeitrag zu diesem Thema: SUPEE-9767, Modman und Symlinks
Liste möglicher Probleme
V2 wurde seit diesem ursprünglichen Beitrag veröffentlicht. Vergessen Sie nicht zu aktualisieren
Bugs
Das Wort "Bestätigt" wird für bestätigte Fehler verwendet. Wenn es nicht vorhanden ist, bedeutet dies, dass es sich möglicherweise um einen Fehler handelt, der jedoch noch nicht bestätigt wurde.
Probleme mit Hunk-Fehlern
Beachten Sie, dass all diese Probleme einfach daran liegen können, dass Sie die Originaldatei geändert haben, um zu überprüfen, ob dies nicht der Fall ist:
- Sichern Sie die Datei, in der der Fehler "Hunk Failed" angezeigt wird
- Laden Sie die Originaldatei von Ihrer Magento-Version herunter
- Vergleichen Sie beide Dateien
Wenn sich die Dateien unterscheiden, müssen Sie den Patch mit der Originaldatei anwenden. Wenden Sie dann Ihre benutzerdefinierten Änderungen auf saubere Weise erneut an, z. B .:
- benutzerdefinierte Vorlage in einem benutzerdefinierten Themenordner
local.xml
- App / Code / lokale Datei
Wenn sich die Dateien nicht unterscheiden, handelt es sich entweder um ein Berechtigungsproblem oder um einen "Bug" im Patch.