skip to Main Content
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET"); 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "X-Shopify-Access-Token: $token"));
$translation_json = curl_exec($ch);
$translation_decoded= json_decode($translation_json, true);

The result is:

Array
(
    [asset] => Array
        (
            [key] => locales/en.default.json
            [public_url] => 
            [value] => {
  "general": {
    "accessibility": {
      "skip_to_content": "Skip to content",
      "close_modal": "Close (esc)"
    },
    "meta": {
      "tags": "Tagged "{{ tags }}"",
      "page": "Page {{ page }}"
    },
    "404": {
      "title": "404 Page Not Found",
      "subtext": "The page you requested does not exist.",
      "link": "Continue shopping"
    },
    "pagination": {
      "previous": "Previous",
      "next": "Next",
      "current_page": "Page {{ current }} of {{ total }}"
    },
    "password_page": {
      "opening_soon": "Opening Soon",
      "login_form_heading": "Enter store using password",
      "login_form_password_label": "Password",
      "login_form_password_placeholder": "Your password",
      "login_form_submit": "Enter",
      "signup_form_email_label": "Email",
      "signup_form_success": "We will send you an email right before we open!",
      "admin_link_html": "Are you the store owner? Log in here</a>",
      "password_link": "Enter using password",
      "powered_by_shopify_html": "This shop will be powered by {{ shopify }}"
    },
    "social": {
      "share_on_facebook": "Share",
      "share_on_twitter": "Tweet",
      "share_on_pinterest": "Pin it",
      "alt_text": {
        "share_on_facebook": "Share on Facebook",
        "share_on_twitter": "Tweet on Twitter",
        "share_on_pinterest": "Pin on Pinterest"
      }
    },
    "search": {
      "no_results_html": "Your search for "{{ terms }}" did not yield any results.",
      "results_with_count": {
        "one": "{{ count }} result for "{{ terms }}"",
        "other": "{{ count }} results for "{{ terms }}""
      },
      "title": "Search our site",
      "placeholder": "Search",
      "submit": "Submit",
      "close": "Close search"
    },
    "newsletter_form": {
      "newsletter_email": "Join our mailing list",
      "email_placeholder": "Email address",
      "confirmation": "Thanks for subscribing",
      "submit": "Subscribe"
    },
    "filters": {
      "show_more": "Show More",
      "show_less": "Show Less"
    }
  },

I decoded this array from a json response, but facing problem to loop through this? I want use values from accessibility, 404, password_page, social and more. How do I get values from this?

3

Answers


  1. Because that still in json format you need to decode again the values to make it into array

    $decode = json_decode($translation_decoded['asset']['value']);
    
    Login or Signup to reply.
  2. $accessibility=$translation_decoded['asset']['value']['general']['accessibility'] ;
    $social=$translation_decoded['asset']['value']['social'] ;
    $password_page=$translation_decoded['asset']['value']['password_page'] ;
    $Page404=$translation_decoded['asset']['value']['404'] ;
    

    You can use this way. Please try this.

    Login or Signup to reply.
  3. add the third $depth option to your json_decode funciton, how to use it refer manual and this post

    $translation_decoded= json_decode($translation_json, true, $depth);
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search