Dart Flutter - получение пользовательского типа сообщения WordPress с помощью Chopper
Я создаю мобильный телефон с помощью Google Flutter Framework и использую Wordpress в качестве серверной части для своего приложения. Я хочу получить данные Wordpress Custom Post Type в формате JSON во Flutter с помощью Chopper Retrofit из Flutter API.
Может ли кто-нибудь помочь мне создать образец кода, чтобы я мог легко начать работу? Я работал с этим ( Flutter Wordpress), но не знаю, как использовать с этим пользовательские типы сообщений.
https://github.com/dreamsoftin/flutter_wordpress
Или, если кто-нибудь знает, как использовать это и получать пользовательские типы сообщений, мне было бы проще.
Пожалуйста помоги! Спасибо!
1 ответ
Глядя на пакет, который вы хотите использовать для создания мобильного приложения, нет примера и решения для пользовательских типов (https://github.com/dreamsoftin/flutter_wordpress), но вы можете его разветвить и расширить для определенных пользовательских типы сообщений. Я покажу вам пример того, как это сделать (исключая настраиваемые поля):
В flutter_wordpress/lib/constants.dart
добавить после строки #10
const URL_POSTS = '$URL_WP_BASE/posts';
строка для конечной точки вашего настраиваемого сообщения. Скажем, у вас есть настраиваемая книга сообщений, вы добавите конечную точкуbooks
:
const URL_BOOKS = '$URL_WP_BASE/books';
см. объяснение об этом и о том, как включить REST API для настраиваемого типа сообщения здесь:
Затем в папке flutter_wordpress/lib/requests/ найдите, клонируйте и переименуйте файл:
params_post_list.dart в params_book_list.dart
И переименуйте здесь class ParamsPostList
для класса ParamsBookList
в папке flutter_wordpress / lib / schemas/ find
post.dart скопируйте и переименуйте вbook.dart
И переименуйте здесь class Post
для класса Book
Затем в файле flutter_wordpress / lib / flutter_wordpress.dart:
найти линию import 'schemas/post.dart';
и после этого добавьте строку import 'schemas/book.dart';
найти линию export 'requests/params_post_list.dart';
и после этого добавьте строку export 'requests/params_book_list.dart';
найти линию export 'schemas/post.dart';
и после этого добавьте строку export 'schemas/book.dart';
Затем найдите функции
async.Future<List<Post>> fetchPosts()
Future<Post> _postBuilder()
async.Future<Post> createPost({@required Post post})
скопируйте эти функции, переименуйте его и замените Post
с участием Book
(деликатный случай)
примечание: найти URL_POSTS
в скопированных функциях и переименовать в URL_BOOKS