Giter Club home page Giter Club logo

topicmenu's Introduction

Grav Topic Menu Plugin

topicmenu is a simple Grav plugin that traverses a portion of a website, typically /blog, and creates a two-dimensional array containing a first level taxonomy and each second level taxonomy associated with them.

Said another way, it returns an array like this: topicmenu_array[level_1][level_2]. If the level_1 taxonomy was a blog category and the level_2 taxonomy was the post tags, you’d have an array that listed all the tags that were associated with each category.

That array is then available to your Twig templates as the variable topics_tags.

Installation

To install this plugin, just download the zip version of this repository and unzip it under /your/site/grav/user/plugins. Then, rename the folder to topicmenu. You can find these files on GitHub.

You should now have all the plugin files under

/your/site/grav/user/plugins/topicmenu

NOTE: This plugin is a modular component for Grav which requires Grav to function

Usage

The plug-in is enabled by default and will automatically start working. To configure or disable it, copy the user/plugins/topicmenu/topicmenu.yaml to user/config/plugins/topicmenu.yaml and make your modifications.

enabled: true                  # global enable/disable the entire plugin
page_page: /blog			   # set the starting path of the files to traverse
taxonomy_level_1: topic        # set the first level of the taxonomy to use
taxonomy_level_2: tag          # set the first level of the taxonomy to use

topicmenu's People

Contributors

bobrocke avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

topicmenu's Issues

Not working with Grav's Admin Panel

The plugin TopicMenu can't be configured using the new Grav's Admin Panel. For example, if we go to the settings page of the plugin (url /admin/plugins/topicmenu) and click on Save, there's the following error:

Validation failed: page_path is not defined in blueprints

According to a Grav developer: "These plugins just need to get updated with appropriate blueprint files so they will work in the admin plugin."

My config: Grav v0.9.39, Admin Panel v0.4.2, TopicMenu v1.0.0

Call to a member function children() on a non-object

hello, when i install this plugin and activate it my site shows this error

[2015-11-11 17:18:44] grav.CRITICAL: Call to a member function children() on a non-object - Trace: #0 C:\xampp\htdocs\__mynews\grav\vendor\filp\whoops\src\Whoops\Run.php(357): Whoops\Run->handleError(1, 'Call to a membe...', 'C:\xampp\htdocs...', 62) #1 [internal function]: Whoops\Run->handleShutdown() #2 {main} [] []

"Call to a member function children() on a non-object"

I am just playing around with grav. After savng my first page I get this error, which seems to come from this plugin:

Whoops \ Exception \ ErrorException (E_ERROR)
Call to a member function children() on a non-object

the error points to line 62 in topicmenu.php.

This is a fresh install of grav, no custom things going on and I just wanted to preview the first test page I generated. So no heavy customization going on here.

Server error

Grav v1.1.17 - Admin v1.2.14

0 - Call to a member function children() on null

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.