The data generating PHP, if it truly stands alone and doesn’t use any WordPress code or WordPress’ data layer, can be licensed as a standalone library. You can use any license you want here without any problems.
The only issues come when you start distributing your code. If you want your theme hosted in the theme repository on WordPress.org, it must be GPL-compatible. That means you have to use either GPL or a more permissible license on your extra library …
If you’re distributing things yourself, you just have to make a very clear distinction between the parts of the theme that are GPL and the parts that aren’t. But since you’ll be bundling a part that’s not GPL, you can’t distribute the entire package as GPL.
So no, all PHP does not have to be GPL unless you’re distributing the entire package under the terms of the GPL.
Related Posts:
- Does the functions.php file ever get called during an AJAX call? Debug AJAX
- Bestway To Define Theme and Plugin path and url
- Form to Add Posts to Custom Post Type
- How do I add settings to the Background Options Page?
- Import media to online WordPress from local development
- How to add a checkbox element to attachments editor with example
- What is the right way to include a wp-admin file in your theme?
- Theme Check gives: Required: This theme doesn’t seem to display tags?
- Is it possible to use line break in theme description?
- Override Current Theme Setting in wp_config.php
- Active theme responds to theme change request to alert user
- Theme showing incorrect update
- modify a output of a widget
- How do I “unhook” / de-register jQuery so that it’s not called as part of wp_footer();?
- changing Specific section background image in wordpress
- WP Gutenberg custom block – generate theme colors from SASS and use them in the inspector and php callback
- Which is the simplest theme for WordPress to use it as your base?
- There’s an image named g.gif somewhere in my WordPress site
- How to highlight the current page in the nav menu?
- Is tag default in WordPress?
- Whats the safest way to output custom JavaScript and Css code entered by the admin in the Theme Settings?
- Should I use language_attributes() or bloginfo(“language”) in html tag
- Getting jquery to work with custom theme
- How to retrieve an image from a post and display it before excerpt of a post? [duplicate]
- Why does WP recommend against custom favicon functionality in themes?
- What’s the best action to use when you want to do something only once per theme setup?
- Excluding a page with a certain name from wp_page_menu
- Widgets with groups / sub widgets? Widget in a widget?
- How to upload images using Settings API
- WordPress 404 page returning with default in IIS7
- Avada resources still loading from localhost after database migration [closed]
- How do I create a custom partial / template?
- How to make the_tags title translatable?
- Should I use include or load_template for including shortcodes, plugins and so on?
- Get a setting value conditionally in the Customizer api
- How should I be handling my theme version numbering?
- Set default featured image for terms of a custom taxonomy
- How would you accomplish the following advanced settings page?
- image url relative path not working in css file
- Sort wp_query by sum of two meta fields
- How to i style the elements from the TinyMCE
- Integrate WooCommerce theme with a WordPress theme [closed]
- Automated Footer information
- Why wp_nav_menu() doesnt show the proper meny when invoked two consecutive times?
- Change the “Default Avatar” admin option via functions.php
- How to develop a menu like wwe.com?
- ACF Pro make URL Linked in Custom Template [closed]
- How to escape multiple attribute at once in WordPress?
- Override plugin option by with a custom theme
- How is the `get_sidebar` function meant to be used to call a 2nd sidebar?
- Is WordPress a good option for this…?
- Review site using WordPress
- Making a WordPress theme based on twentyten
- Is functions.php in themes applied to all templates?
- Doing context-aware previews in the WordPress Customizer
- Why Tags don’t appear in my page?
- First post full width without Sidebar
- multiple html/css files for wordpress theme?
- best practices for updating wordpress theme
- Multi Site Setup, Child Themes, Getting Style Sheet Directory
- Add image URL automatically to custom field?
- content filter (add_filter) for category description?
- Exclude parent categories from the_category() within the loop
- How do I pass the category object to a function when is_archive() is true?
- Making a horizontal flyout menu from WordPress category listing
- How to use Canonical URL meta tag to avoid duplicate content issues with WP home pages
- getBoundingClientRect() showing different values on load vs scroll
- Host Private Custom Theme
- Ensure SQL changes carry over
- How can I set multi archive page template on same time for only one custom post type?
- Exclude categories from wp query not working
- Copying a modified theme from one wordpress site to another wordpress site [closed]
- How to get custom logo with REST API instead of get_theme_mod();
- How can I change this SVG shape that’s generated?
- Show Yoast SEO meta tags in Custom WordPress Templates (Theme)
- Can I set rest API endpoints from within a theme?
- Theme starter content translation is not working
- (Parent) theme Is Not Showing In Theme Selection Panel and Therefore Breaks Child Theme
- remove_action(‘genesis_header’,’genesis_do_header’) hook not working
- WordPress doesn’t load css, image and js files after moving local installation folder
- Customizer Image-Picker Preview Not Working
- How to get url image page the right way?
- Mobile view logo background colour in wordpress
- Breaking Categories Up into Individual Divs
- Strip HTML tags on custom code from the_content
- page.php is not called when I load a Page
- wpdb->insert adds too many rows
- Main Menu Theme Different Output Print
- wpalchemy repeating fields dropdown issue
- How to reuse parts of WordPress site e.g. header, footer, part of header for multiple WordPress sites?
- WordPress loop not working on blog.php page
- Option to show/hide widget depending on is_home?
- Add Dynamic Sidebar to Exisiting WordPress Theme [closed]
- IS there any reason not to include javascript in my own post’s embeds?
- How to create more templates to the same theme?
- How do I middle-align my header menu items in WordPress [closed]
- How to add Dummy content when active wordpress theme without xml import?
- Is there any reason that other theme elements (such as nav menus) shouldn’t be within the loop?
- Add wrapper for a specific sub-menu
- Theme’s featured image option is not showing up