HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/shoetique/wp-content/plugins/wp-all-export-pro/src/App/Feed/Feed.php
<?php

namespace Wpae\App\Feed;


class Feed
{
    private $feedData;

    public function __construct($feedData)
    {

        if(!isset($feedData['shipping']['includeAttributes'])) {
            $feedData['shipping']['includeAttributes'] = 'include';
        }
        
        $this->feedData = $feedData;

        //CASES:
        // function("{Snippet}");
        // function("pre-{Snippet}");
        // function("{Snippet}-after");
        // function("{Snippet1}{Snippet2}");
        // function("pre-{Snippet1}-{Snippet2}-pro");
        
        array_walk_recursive($this->feedData, function(&$item){
            $functions = array();
            preg_match_all('%(\[[^\]\[]*\])%', $item, $functions);

            if(is_array($functions) && count($functions) && !empty($functions[0])) {

                if(
                    strpos("\"{", $item) !== false ||
                    strpos("'{'", $item) !== false ||
                    strpos($item, ",{") !== false ||
                    strpos($item, "},") !== false ||
                    strpos($item, "({") !== false ||
                    strpos($item, "})") !== false
                ) {
                    $item = str_replace(array("\"{", "'{"), "{", $item);
                    $item = str_replace(array("}\"", "}'"), "}", $item);
                    $item = str_replace("{", "\"{", $item);
                    $item = str_replace("}", "}\"", $item);
                }
            }

        });
    }

    public function getFeedData()
    {
        return $this->feedData;
    }

    public function getSectionFeedData($section)
    {
        if(isset($this->feedData[$section])) {
            return $this->feedData[$section];
        } else {
            throw new \Exception('Unknown feed section '.$section);
        }
    }
}