Counts the number of users, categories, posts, comments, pages, links, tags, link-categories, words in posts, words in comments and words in pages.
Please find the version for WordPress
Plugin’s website:https://www.bernhard-riedl.com/projects/
Author’s website:https://www.bernhard-riedl.com/
Attention! – Geeks’ stuff ahead! 😉
With GeneralStats 2.00 and higher you can use a function-call to display individual stat(-blocks) on different positions on your page.
Parameters can either be passed as an array or a URL query type string (e.g. “display=0&format=0”). Please note that WordPress parses all arguments as strings, thus booleans have to be 0 or 1 if used in query type strings whereas for arrays real booleans should be used. Furthermore you have to use the prefix stats_
to select different stats in a query_string. – For example: stat_0=Community&stat_12=Pages Word-Count
.
function $generalstats->count($params=array())
$params:
stat
: a stat-id of the following list
thousands_separator
: divides counts by thousand delimiters; default ,
=> e.g. 1,386,267
display
: if you want to return the stats-information (e.g. for storing in a variable) instead of echoing it with this function-call, set this to false
; default setting is true
format_container
: This option can be used to format the span
container with css. Please note, that it should only be used to provide individual formats in case the class-style itself cannot be changed.
no_refresh
: If set to true, GeneralStats will not produce any Ajax-Refresh-code, even if you have enabled the Ajax refresh in the admin menu.
The following example outputs the number of post tags:
<?php global $generalstats; $generalstats->count('stat=6'); ?>
function $generalstats->output($params=array())
$params:
stat_selected
: this array has to hold the id of the selected stat as key and the description as array-value, e.g. 6 => 'Post-Tags'
; fallback to selected stats in Admin Menu
before_list
: default <ul>
after_list
: default </ul>
format_stat
: default <li><strong>%name</strong> %count</li>
, %name and %count will be replaced by the attributes of the stat-entry
thousands_separator
: divides numbers by thousand delimiters default ,
=> e.g. 1,386,267
use_container
: if set to true
(default value) and the same selected stats and format is used as set in the admin menu, GeneralStats wraps the output in a html div with the class generalstats-refreshable-output
– the class generalstats-output
will be used for all other output; if you set use_container
to false
, no container div will be generated
display
: if you want to return the stats-information (e.g. for storing in a variable) instead of echoing it with this function-call, set this to false
; default setting is true
format_container
: This option can be used to format the div
container with css. Please note, that it should only be used to provide individual formats in case the class-style itself cannot be changed.
no_refresh
: If set to true, GeneralStats will not produce any Ajax-Refresh-code, even if you have enabled the Ajax refresh in the admin menu.
The following example outputs the users and posts-counts with the title ‘Community-Members’ and ‘My Post-Count’:
<?php global $generalstats; $params=array( 'stats_selected' => array( 0 => 'Community-Members', 2 => 'My Post-Count' ) ); $generalstats->output($params); ?>
General Example:
Enter the following text anywhere in a post or page to show your current pages-count:
There are [generalstats_count stat=4] pages on my weblog
Available Shortcodes:
generalstats_output
Invokes $generalstats->output($params)
. Please note that you have to use the prefix stats_
to select stats. – For example: stat_0="Community" stat_12="Pages Word-Count"
generalstats_count
Invokes $generalstats->count($params)
.
Available Filters:
generalstats_defaults
In case you want to set the default parameters globally rather than handing them over on every function call, you can add the filtergeneralstats_defaults
in for example generalstats.php or your own customization plugin (recommended).
Please note that parameters which you hand over to a function call ($generalstats->output
or $generalstats->count
) will always override the defaults parameters, even if they have been set by a filter or in the admin menu.
generalstats_dashboard_widget
Receives an array which is used for the dashboard-widget-function call to $generalstats->output($params)
. display
and use_container
will automatically be set to true.
generalstats_dashboard_right_now
Receives an array which is used for the dashboard-right-now-box-function call to $generalstats->output($params)
. display
and use_container
will automatically be set to true.
generalstats_mail_stats_content
Receives an array which is used for the mail-stats-function call to $generalstats->output($params)
. display
and use_container
will automatically be set to false.
Available Actions:
generalstats_force_cache_refresh_stat
Gets triggered by GeneralStats’ forced cache refresh; receives a stat-id as parameter.
generalstats_force_cache_refresh_stats
Gets triggered by GeneralStats’ forced cache refresh; receives an array with stat-ids as parameter.
Copy the generalstats
directory into your WordPress Plugins directory (usually wp-content/plugins). Hint: You can also conduct this step within your Admin Menu.
In the WordPress Admin Menu go to the Plugins tab and activate the GeneralStats plugin.
Navigate to the Settings/GeneralStats tab and customize the stats according to your desires.
If you have widget functionality just drag and drop GeneralStats on your widget area in the Appearance Menu. Add additional function and shortcode calls according to your desires.
Be happy and celebrate! (and maybe you want to add a link to https://www.bernhard-riedl.com/projects/)
Copy the generalstats
directory into your WordPress Plugins directory (usually wp-content/plugins). Hint: You can also conduct this step within your Admin Menu.
In the WordPress Admin Menu go to the Plugins tab and activate the GeneralStats plugin.
Navigate to the Settings/GeneralStats tab and customize the stats according to your desires.
If you have widget functionality just drag and drop GeneralStats on your widget area in the Appearance Menu. Add additional function and shortcode calls according to your desires.
Be happy and celebrate! (and maybe you want to add a link to https://www.bernhard-riedl.com/projects/)
Some attributes, especially the ones which count words in ...
, need more memory and CPU-time to be executed.
For performance optimization, you can play around with the Rows at Once
parameter in the Performance
tab, which represents the number of database rows processed at once. In other words, if your weblog consists of 1,200 comments and you want to count the words in comments with a Rows at once
value set to 100, it will take 12 sql-queries. This may be much or less, depending on your provider’s environment and the size of your weblog. Hence, this setting cannot be automatically calculated because it is not easily predictable. So, it is up to you to optimize this setting.
Nevertheless, for smaller weblogs the default value of 100 “Rows at once” should be appropriate.
In WordPress 3.5 and higher the Link Manager (aka Blogroll) has been deactivated by default. – In order to re-activate it you need to download the Link Manager Plugin.
This section is based on JavaScript. Thus, you have to enable JavaScript in your browser (this is a default setting in modern browsers like Mozilla Firefox or Google Chrome). GeneralStats is still fully functional without JavaScript, but you need to customize your stats manually. If you use a device with a smaller display (e.g. mobile phone), this section will also be hidden.
Allow anonymous Ajax Refresh Requests
with All users can view stats
and added the option Capability to view stats
to define the capability of a certain user to access the stats)wp_localize_script
(GeneralStats is now compatible with WP Minify)$generalstats->output()
and $generalstats->count()
GeneralStatsComplete()