JSM file_get_contents() Shortcode

תיאור

A safe and reliable WordPress shortcode for PHP's file_get_contents() function.

Shortcode Attributes

  • body = Keep only the content between <body></body> HTML tags (default is true).
  • cache = Number of seconds to cache the contents (defaults is 3600 seconds).
  • class = Add a class to the content 'div' container (default is none).
  • code = Wrap the content in a <code></code> container (default is false).
  • code_class = Add a class to the 'code' container (default is none).
  • code_lang = Escape HTML characters, wrap the content in a <pre><code></code></pre> container, and add a language class to the 'code' container (default is none).
  • esc_html = Escape HTML characters (default is false).
  • esc_html_pre_code = Escape HTML characters and wrap the content in a <pre><code></code></pre> container (default is false).
  • file = Path to a local file (relative to the wp-content/ folder).
  • filter = Apply the named filter to the content (default is none).
  • more = Add a more link on non-singular web pages (default is true).
  • pre = Wrap the content in a <pre></pre> container (default is false).
  • pre_class = Add a class to the 'pre' container (default is none).
  • pre_code = Wrap the content in a <pre><code></code></pre> container (default is false).
  • pre_lang = Escape HTML characters, wrap the content in a <pre><code></code></pre> container, and add a language class to the 'pre' container (default is none).
  • pre_title = Add a title to the 'pre' container (default is none).
  • url = URL or file URI.
  • utf8 = Encode HTML entities (default is true).

Note that all file paths (not URLs) are relative to the wp-content/ folder. For security reasons, it is not possible to include files outside the wp-content/ folder. As an example, the shortcode attributes url="file://dir/file.html" and file="/dir/file.html" are both read as wordpress/wp-contents/dir/file.html. The .. folder name is also stripped from file paths to prevent backing out of the wp-content/ folder.

Shortcode Name

The WPFGC_SHORTCODE_NAME constant can be defined in your wp-config.php file to add an additional custom shortcode name (the default shortcode names are 'wp-file-get-contents' and 'wpfgc').

define( 'WPFGC_SHORTCODE_NAME', 'include' );

Shortcode Examples

[wpfgc url="http://example.com/dir/file.html"]

[wpfgc url="http://example.com/counter/" cache="7200"]

[wpfgc url="file://dir/file.html"]

[wpfgc file="/dir/file.txt" pre="true" filter="my_custom_filter_name" cache="600"]

[wpfgc file="examples/example-1.php" code_lang="php"]

סקירות

12 באפריל 2017
There are tons of uses for this but for us it is an solution for SPA automated HTML backend deployments.
קראו את כל הסקירות

מפתחים

"JSM file_get_contents() Shortcode" הוא תוסף קוד פתוח. האנשים הבאים תרמו ליצירת התוסף הזה.

תורמים

ניתן לתרגם את "JSM file_get_contents() Shortcode" לשפה שלך.

מעוניינים בפיתוח?

עיינו בקוד, ראו את הקוד ב-SVN repository, או הירשמו ללוג פיתוח באמצעות RSS.

שינויים

Version Numbering

Version components: {major}.{minor}.{bugfix}[-{stage}.{level}]

  • {major} = Major structural code changes and/or incompatible API changes (ie. breaking changes).
  • {minor} = New functionality was added or improved in a backwards-compatible manner.
  • {bugfix} = Backwards-compatible bug fixes or small improvements.
  • {stage}.{level} = Pre-production release: dev < a (alpha) < b (beta) < rc (release candidate).

Repositories

Changelog / Release Notes

Version 2.7.1 (2023/12/20)

  • New Features
    • None.
  • Improvements
    • None.
  • Bugfixes
    • Added sanitize_text_field() sanitation for file path value.
    • Added wp_http_validate_url() sanitation for URL value (props Erwan Le Rousseau @ WPScan).
  • Developer Notes
    • None.
  • Requires At Least
    • PHP v7.2.34.
    • WordPress v5.8.

Version 2.7.0 (2023/05/16)

  • New Features
    • Added shortcode attribute: code_class, code_lang, esc_html_pre_code, pre_class, pre_code, pre_lang, pre_title.
  • Improvements
    • None.
  • Bugfixes
    • None.
  • Developer Notes
    • None.
  • Requires At Least
    • PHP v7.2.34.
    • WordPress v5.5.