wpbones/morris-php

WPBones fluent PHP helper classes for morris.js

1.0.14 2024-10-01 15:55 UTC

This package is auto-updated.

Last update: 2024-10-24 16:49:38 UTC


README

Latest Stable Version   Latest Unstable Version   Total Downloads   License   Monthly Downloads

This package provides a simple way to use the MorrisJS library in your WordPress plugin.

MorrisJS PHP version for WP Bones

Requirements

This package works with a WordPress plugin written with WP Bones framework library.

Installation

You can install third party packages by using:

php bones require wpbones/morris-php

I advise to use this command instead of composer require because doing this an automatic renaming will done.

You can use composer to install this package:

composer require wpbones/morris-php

You may also to add "wpbones/morris-php": "~0.7" in the composer.json file of your plugin:

  "require": {
    "php": ">=7.4.0",
    "wpbones/wpbones": "~1.5",
    "wpbones/morris-php": "~1.0"
  },

and run

composer install

Enqueue for Controller

You can use the provider to enqueue the styles.

public function index()
{
  // enqueue the minified version
  Morris::enqueue();

  // ...

}

In your view:

<div id="morris-area"></div>

<?php

echo Morris::area( 'morris-area' )
           ->xkey( [ 'y' ] )
           ->ykeys( [ 'a', 'b' ] )
           ->labels( [ 'Series A', 'Series B' ] )
           ->hoverCallback( 'function(index, options, content){var row = options.data[index];return "sin(" + row.x + ") = " + row.y;}' )
           ->data( [
                     [ "y" => '2006', "a" => 100, "b" => 90 ],
                     [ "y" => '2007', "a" => 75, "b" => 65 ],
                     [ "y" => '2008', "a" => 50, "b" => 40 ],
                     [ "y" => '2009', "a" => 75, "b" => 65 ],
                     [ "y" => '2010', "a" => 50, "b" => 40 ],
                     [ "y" => '2011', "a" => 75, "b" => 65 ],
                     [ "y" => '2012', "a" => 100, "b" => 90 ]
                   ] );