AppPresser is the first native mobile app development framework for WordPress.
AppPresser allows you to use a WordPress site as an app, including access to device features such as the camera, contacts, and more. You can create your app completely in WordPress, using themes, plugins, and all the stuff you already know.
Developers can use this plugin to make custom apps, or custom extensions for AppPresser. If you are not a developer, please see our website for more information about creating an app with WordPress.
This plugin is not an app-creator in itself, it serves as the core for all app development with AppPresser.
Note: This repository is for code contributors. To use this plugin on your website, please download here: http://wordpress.org/plugins/apppresser/
After cloning this repository, please change the folder name from "AppPresser" to "apppresser" to fix dependency errors.
- Integrates Phonegap with WordPress, which exposes the Phonegap API
- Allows you to use javascript (using the Phonegap API) to use native device features
- Allows you to use other AppPresser plugins and themes to create an app
- Adds a settings page with app-only homepage, menus, and theme settings
- It does not automatically create an app for you, or give you a WYSIWYG app creator
- It does not change your desktop site
- It does not build the app for you
- Install and activate the plugin
- Add AppPresser themes or extensions to create your app
- Build your app yourself with Phonegap, or with our build service
- Distribute to the iOS/Android app stores
- Improve password verification process
- Tested with WordPress 6.7
- Improve reset password workflow
- Improve the reset password process
- Improve workflow when ion-theme is being updated
- Removed old legacy code
- Improved app version checking
- Improved authentication process when using the API
- More changes for PHP 8.2 compatibility
- Tested with WordPress 6.6
- Update code for PHP 8.2 compatibility
- Fix refreshing login data when user role is changed
- Added login refresh functionality
- Improve security when there is no 'openssl' extension on the server
- Improve login API endpoint
- Tested with WordPress 6.5
- Improve security when handling logs
- Add a limit to API requests
- Improve security when verifying a user
- Improve security when reseting the password
- Tested with WordPress 6.4
- Fix query_args to support tax_query
- Support quotes and double quotes when resetting password
- Fix JWT decode functionality
- Support latest version of JWT plugin
- Add AppPresser Bridge and IonTheme to the myappp verifier
- Support textarea fields in AppPresser settings
- Fix theme update transient error
- Add a new endpoint to verify Website URL and plugins
- Allow registration from API only if enabled
- Remove deprecated files from AppPresser 1 in /pg/*
- Validate upload by checking if file input is empty
- Add filter on post types when adding api fields: appp_api_fields_post_types
- Add missing permission callbacks
- Fix for adding comments anonymously via API
- Refresh bug fix
- Support login parameter
- Add API endpoint for form submissions
- Extend comment API response to include nested replies
- Extend login token expiration from 7 days to 60 days. This can be modified using the jwt_auth_expire filter found here https://wordpress.org/plugins/jwt-auth/
- Fix settings label
- Add auth cookie on api login
- Improve API login data response, add email
- Remove JWT wp-config.php requirement, move to setting
- Add theme updater
- Fix potential bug with update transient
- Support for AppPresser 4
- JWT auth for WP-API
- Bug fixes
- Security fix: remove old code
- Update tested up to
- User roles
- Add option to use an image for the media player in the app. See how to add post meta for appp_media_image in the AppPresser docs.
- Minor bug fixes
- properly format json login error
- fix missing user_id and token on registration
- filters and translations for api register
- register action hooks
- extend transient for software updates checks to reduce the number of server calls for plugin/theme updates
- Cookie fix to allow login via browser preview
- Add action before and after login
- Reset password with API for better in-app experience
- Use https for app store.
- Fix PHP warnings for static functions
- Add API login and registration for better in-app experience
- Add CORS access rules to API responses
- Update language template .pot file
- Bug fix for older PHP causing syntax error
- Add Enable CORS admin setting
- Add myapp_disable_remote_updates hook to allow developers to turn off API calls to myapppresser.com
- Extend plugin/theme license checking to two weeks
- Simplify short reset code
- Language POT file update
- Minor bug fix: check curl_version exists
- Minor bug fix: check empty vars
- Add support for file downloads
- Additional support for custom post types
- Add filter hook for login details
- Fix app theme related bugs
- Fix EDD naming conflict
- Fix switch theme bug when using infinite scroll on list pages
- Support for both login_redirect and logout_redirect hooks including responding with both title and URL
- Add CURL, Supports OpenSSL to system log
- Add appp_x_switch_theme hooks to allow developers to add their own logic when to switch the app theme
- Make infinite scroll to pull the number of posts which is set as default post_per_page amount
- More content from infinite scroll posts now use templates from the app theme instead of hardcoded markup
- Add: filter hook for login/logout strings
- Update EDD plugin/theme updater
- Fix: properly handle appp_login_redirect filter
- Fix: URL updates to v3 docs
- Fix: add success boolean in ajax login response
- Fix: deprecate safe_mode from system info
- Fix: update language template apppressser.pot
- Fix: license tab missing when theme is not installed
- Make the BuddyPress avatar available to the app if it's set
- Add more details to the system info
- Fix Facebook connect removing app theme cookies
- Update language .pot template
- Fix PushWoosh deep linking for Android
- Add System Info to admin settings
- Misc. bug fixes
- Support for WMPL translations in apps
- Fix Android deep linking for AppPush
- Parse URL query from infinite scroll
- Improve infinite scroll
- Make logout with ajax available
- Add Avatar to ajax login response
- Use mobile friendly password reset codes
- Fix admin styling for checkboxes
- Bug fixes
- Update EDD SL
- Bug fixes to help activating licenses
- Add back javascript upload settings for v2
- Remove extensions feed page
- A whole new experience: AppPresser 3.0
- Display a message when the getCurrentPosition timesout when getting GPS location
- Fix notification alert for iOS
- fix redirect on settings page
- Fix customizer compatibility issues with WordPress 4.7
- Add filters for custom login/logout redirects
- Add class for links to open In-App Browser and close it on pause to force stop audio/video on Android
- Fix custom links for PushWoosh notifications for Android
- Fix opening external media on touch events
- Fix bug for geolocation places
- Add l10n variables for AppPush
- Fix displaying HTML in customerizer
- Fix notification variables changes from PushWoosh plugin
- Send open/close keyboard events to AppAds
- Allow externally linked images to open in the In-App browser
- Send open/close keyboard events to Ion and AppTheme to help fix copy/paste issues with iOS
- Bug fixes
- Allow translatable text
- Show the KeyboardAccessaryBar on iOS
- Add fb_id param for AppFBConnect
- Add a custom callback for fb login
- Add options to IAB window.open
- Optionally allow external links to not show the app theme, forces a page reload on return
- Improve logic when using In-App browser for external URLs to decifer relative links, tel: and mail:
- Fix click events related to the .swiper-container for AppSwiper
- Read device id whether it is a string or object
- Make AppAds check each OS separately for existing ad settings
- Fix expired license message
- Add the ability to use AdMob ads in the AppAds plugin
- Bug fix: improve logic of comparing domains when opening the InApp browser
- Enqueue jQuery to fix missing localized variable ajaxurl for AppTheme and Ion theme
- Fix events triggering prior to iframe not yet ready
- Clear iOS badges on app launch
- Fix iOS bug for URL target for _system when target is IMG
- Bail AdMob init when no ad codes are set in wp-admin
- AppGeo bug fix for empty lat and long on checkin
- Quick start admin settings
- Verify THEME_SLUG
- Add external-media class to open URLs using the Google Docs previewer
- Kill videos on Android pause event
- fix links with the 'external' class that have the same domain as the site to open in the InAppBrowser.
- fix go back button for Android
- add filter for Facebook graph fields
- fix AppPresser_Logger error for multisite
- remove wp_cron for AppPresser_Logger and use alternate method to turn off logging
- Give developers the ability to uploads custom js files for the app in the WP Admin
- Add AJAX login to #loginform modal (requires also updating AppTheme and Ion theme)
- Add js to recognize css class 'system' to set a link's target to '_system' so links open in Safari or Chrome
- Fix external links that should open in the In-App Browser
- Other bug fixes
- New features to enable offline app capabilities
- Moves cordova files from the website to the device
- Bug fixes
- Include phonegap files for 3.7.0
- Add 3.7.0 option to admin settings
- Remove logging from multisite
- Improve the logic around creating the log file
- Add an admin nag for log file which each admin can dismiss
- Fix log file URL
- Verify backbutton event before calling maybeGoBack
- Fix typos in readme files
- Add noGoBackFlag feature to allow any app to stop the mayGoBack function (appbuddy 0.9.9 initially)
- Fix Android back button when 'disable dynamic page loading' is enabled
- bug fix: Android back button
- Remove static homepage option from customizer
- Add option for posts on mobile homepage
- Standardize text-domains
- Add logging for debugging and customer support
- Stop youtube videos on app exit
- Fix undefined index error
- Add ajax functions for AppTheme
- Started updating changelog again, yay!
- Add support for Facebook connect extension
- Delete unnecessary files
- Update to support Phonegap 3.6.3
- Add option to switch between Phonegap versions
- Bug fixes, translation updates
- Roll back script optimization to fix push notifications and other bugs
- Fix for splashscreen hide
- Enhancement: optimize cordova scripts to only load when needed
- Moved app menu settings to theme customizer exclusively
- Hide app splashscreen on load
- Misc bug fixes
- Fixed annoyance of settings page not returning to the tab you were on when you clicked 'save.'
- Enhancement: New filter, "apppresser_sanitize_setting_$key" for registering your own sanitization callback to override AppPresser's.
- Enhancement: New filter, "apppresser_field_override_$type" for registering your own field type view callback to override AppPresser's.
- Enhancement: Added CMB. Settings API will be re-worked in next versions to use CMB.
- Bug Fix: App-theme settings were not getting displayed if the theme was not active (despite being set as the App-only theme)
- Bug Fix: Theme_mod settings would get the non-theme_mod setting warning asterisk if no value had been saved to them yet.
- Bug Fix: If the "Load AppPresser for Admins Only" setting was not checked, the theme customizer would try to activate the app theme from the customizer.
- Enable theme customizer for the App-only theme while theme is not active. There is now a link to customize the theme below the select dropdown.
- Enhancement: New filter
apppresser_theme_settings_file
that allows you to set the location of your theme's AppPresser settings registration (so your settings show when the theme is not active). Will fallback to looking forappp-settings.php
file in the theme root. - Enhancement: New filter
apppresser_notifications
, allows other plugins/themes to add their own notification count.
- Enhancement/Bug Fix: Don't delete license keys and other options if a particular plugin is deactivated at the time of saving.
- Enhancement/Bug Fix: AppPresser "App only theme" option now works with child themes.
- Enhancement: Add a
apppresser_tab_top_$tab
hook to match theapppresser_tab_bottom_$tab
hook.
- Extensions submenu highlighting available for AppPresser add-ons.
- Addressed some pre-PHP 5.3 notices.
- Bug Fix: White-screen on the front end if selecting a theme in the "App only theme?" setting that does not support AppPresser. An error will now be shown.
- Improvement:
appp_get_setting()
now accepts a fallback option likeget_option()
.
- Bug Fix:
plugins_loaded
firing too early causing conflicts with other plugins. - Improvement: Check child theme for
app-settings.php
file as well as parent theme. - Improvement: Added method for loading AppPresser theme despite aggressively cached web hosts.
- Bug Fix: Conflict causing other themes to appear to need an update.
- Bug Fixes
- Add theme updater and updater API
- Better styling for "MP6"
- Release into the wild!