GithubHelp home page GithubHelp logo

ilirbajrami / wp-graphql-widgets Goto Github PK

View Code? Open in Web Editor NEW

This project forked from benada002/wp-graphql-widgets

0.0 0.0 0.0 3.7 MB

This plugin adds widgets and sidebar queries to WPGraphQL.

PHP 100.00%

wp-graphql-widgets's Introduction

WPGraphQL Widgets (Queries)

This plugin registers for each active widget a new widget type which exposes all settings of the widget (and for some widgets a rendered field more here) and implements the WidgetInterface which exposes the following fields.

  WidgetInterface {
    active
    databaseId
    html
    id
    idBase
    title
    type
  }

It also adds sidebar queries.

Requirements

Installation

You can install and activate it just like any other WordPress plugin.

Usage

Widget Examples

  widget(id: "nav_menu-3") {
    ... on WPNavMenuWidget {
      navMenu
      active
      databaseId
      html
      id
      idBase
    }
  }
  widgets {
    edges {
      cursor
      node {
        type
        title
        idBase
        id
        html
        databaseId
        active
        sidebar {
          node {
            databaseId
            description
          }
        }
      }
    }
  }

Rendered field

For the WPNavMenuWidget, WPMediaImageWidget, WPWidgetRecentPosts, WPWidgetCategories, WPWidgetPages and WPWidgetRecentComments types there is also rendered field which is a connection to their WPGraphQL type. Here is an example which would give you the menu of a menu widget.

  widget(id: "nav_menu-3") {
    databaseId
    id
    ... on WPNavMenuWidget {
      rendered {
        node {
          menuItems {
            nodes {
              label
              path
            }
          }
        }
      }
    }
  }

Sidebar Examples

  sidebar(sidebar: SIDEBAR) {
    afterSidebar
    afterTitle
    afterWidget
    beforeSidebar
    beforeTitle
    beforeWidget
    class
    databaseId
    description
    id
    name
    widgets {
      edges {
        cursor
        node {
          databaseId
        }
      }
    }
  }
  sidebars {
    edges {
      cursor
      node {
        databaseId
        name
        id
        description
        class
        beforeWidget
        beforeSidebar
        beforeTitle
        afterWidget
        afterTitle
        afterSidebar
        widgets {
          nodes {
            databaseId
          }
        }
      }
    }
  }

wp-graphql-widgets's People

Contributors

benada002 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.